码迷,mamicode.com
首页 > 移动开发 > 详细

Settings app简单学习记录

时间:2014-06-03 13:59:05      阅读:340      评论:0      收藏:0      [点我收藏+]

标签:android   c   class   java   a   http   

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

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

1,如何使用PreferenceActivity构建页面

使用addPreferencesFromIntent或者addPreferencesFromResource将定义了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里。

Settings app简单学习记录,布布扣,bubuko.com

Settings app简单学习记录

标签:android   c   class   java   a   http   

原文地址:http://www.cnblogs.com/wolflzc/p/3759575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!