博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Settings app简单学习记录
阅读量:4322 次
发布时间:2019-06-06

本文共 1020 字,大约阅读时间需要 3 分钟。

Settings是android系统设置的入口。主界面由Settings.java以及settings_headers.xml构成。 

Settings类继承自PreferenceActivity,而PreferenceActivity又继承自ListActivity,ListActivity拥有ListView和ListAdapter类型的成员变量。

1,如何使用PreferenceActivity构建页面

使用或者将定义了headers的内容(如果是从resource中加载,那么一般是放在xml文件夹下的文件)加载进PreferenceActivity。每一个定义的header就是ListView中的一行View,当然,显示出来的样式会不同,比如分类标题“无线和网络”和下面的“WLAN”其实都是一个header。

类似于ListView的使用,我们在ListAdapter的getView方法中,可以使用额外的布局文件,对每一行进行UI定制。比如wlan和bt有开关,那么就用layout下的perference_header_switch_item.xml来构建view。

在构造各种页面组件时用了系统内部属性,如holder.title = (TextView)view.findViewById(com.android.internal.R.id.title);

每一个header对应一个fragment,在settings_headers.xml中使用标签指定,如android:fragment="com.android.settings.wifi.WifiSettings"

2,开关(switch)的处理

以WLAN开关举例,在Settings中会构建WifiEnabler的实例,将实例化的switch传给WifiEnabler,后续的开关状态维护,点击事件监听全都交给WifiEnabler来处理了。

3,设置值的存储

在Settings的OnCreate函数中,就出现了getSharedPreferences,所以设置的值将存储于“/data/data/com.android.settings/shared_prefs”下的com.android.settings_preferences.xml里。

转载于:https://www.cnblogs.com/wolflzc/p/3759575.html

你可能感兴趣的文章
ABAP CDS ON HANA-(10)項目結合して一つ項目として表示
查看>>
网站地址信息
查看>>
产品经理 - 登录 注册
查看>>
小白的python进阶历程------05.占位符
查看>>
CF414BMashmokh and ACMDP
查看>>
Notepad++ 通过g++编译
查看>>
JAVA基础2——类初始化相关执行顺序
查看>>
转:Zend Framework 重定向方法(render, forward, redirect)
查看>>
Linux下查看磁盘与目录的容量——df、du
查看>>
关于日记app的思考
查看>>
使用sencha的cmd创建项目时提示找不到\Sencha\Cmd\repo\.sencha\codegen.json
查看>>
如何快速启动一个Java Web编程框架
查看>>
MSP430单片机存储器结构总结
查看>>
文本框过滤特殊符号
查看>>
教育行业安全无线网络解决方案
查看>>
7个杀手级的开源监测工具
查看>>
软件架构学习小结
查看>>
C语言实现UrlEncode编码/UrlDecode解码
查看>>
返回用户提交的图像工具类
查看>>
树链剖分 BZOJ3589 动态树
查看>>