(1)、使用intent启动的子参数页
说明:
intent:配置Intent的内容,用于启动呈现子参数页内容的一个activity,可以添加Intent可以支持的多个域,如android:data等;
其它标签参看前面说明。
(2)、直接配置子参数页,点击直接呈现该参数页内容
这种配置没有通过intent去启动其他的activity来呈现参数内容,而是点击该参数项后,直接将子参数页的内容显示出来。在子参数页种,可以配置多个各式各样的参数。示例:
7、自定义参数项Preference
有时为了参数项在操作时能够体现一些自定义的功能,可以自定义参数项,也即从Preference派生子类。
public class Preference implements Comparable<Preference>, OnDependencyChangeListener
如何自定义Preference呢?
(1)、创建参数布局文件,这个布局可以不采用系统中已有的参数项,可以使用一些普通的视图类;
(2)、初始化
初始化可以在构造函数调用的时候进行,调用如下的方法将(1)中所设的布局设置好。
Preference.setWidgetLayoutResource(int widgetLayoutResId)
注意:该方法所添加的自定义preference的布局大小被限定为ListView的条目项的尺寸。
或
Preference.setLayoutResource (int widgetLayoutResId)
注意:该方法所添加的自定义preference的布局大小不会被限定为ListView的条目项的尺寸,而是使用自定义preference布局自身所需要的尺寸。
该方法将为该Preference的可控窗口区域设置布局,这个布局会被展开到主布局中。
(3)、绑定数据到所创建好的view中
创建自定义参数项来显示所需要的数据,要将这些数据绑定到从(1)、(2)中所创建的视图类之上,并为相应的视图设置属性,重载如下函数,实现该功能。
Preference.onBindView(View view)
参数:
View view:指向(1)、(2)中所用的布局的视图树的根视图,该视图树中的子视图可以通过view.findViewById(int id)获得。
(4)、事件处理
重载如下方法实现界面事件的处理:
Preference.onClick()
重载该方法,可以保存参数到SharedPreferences中,但是最好是通过调用Preference.callChangeListener(Object newValue)来确保用户想使用新的来更新参数。callChangeListener允许忽略新的参数。
为了保存新的参数,需要调用Preference.persistInt(int value),该方法将参数保存到了SharedPreferences中。
最后,调用notifyChanged()通知UI更新数据。
(5)、参数获取、设置
重载如下方法供初始化回调:
ü Preference.onSetInitialValue(boolean restoreValue, Object defaultValue)
参数:
boolean restoreValue:为真,表示使用存储,需要从SharedPreferences中读取参数;否则,使用默认defaultValue。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-49636-2.html
螃蟹嘛还不错