PreferenceScreen preference是偏好,首选的意思,PreferenceScreen个人翻译成 “偏好显示”,明白这个意思就好,就是说根据特点灵活的定义显示内容风格,一个屏幕可以包含多个风格,像系统自带的声音设置界面。
实现这种显示效果其实很简单,只需要借助PreferenceScreen类即可。在项目资源文件中新建xml文件夹,在里面新建preferences.xml文件.
根元素为PreferenceScreen 代表显示一整个屏幕,内部嵌套PreferenceCategory标签,表示偏好类别,在PreferenceCategory标签内部可以随便存放复选框,输入框,列表等显示控件.可包含的控件内容在android.preference包下可查阅.xml文件编写好后,需要加载到activity中,对于偏好显示的xml加载,可以使用PreferenceActivity中的addPreferencesFromResource(),所以Activity需要继承PreferenceActivity.既然显示的屏幕中包含复选框,输入框的控件,我们必然对选择与否,输入框内容感兴趣,我们要怎样获取屏幕的内容呢?
复写activity中的onPreferenceTreeClick 方法,在对屏幕显示的内容进行操作时,会触发此方法,在方法内部通过调用
即可得到屏幕上输入的内容,与使用SharedPreference对象一样,通过key-value 的形式获取,其中key是xml控件标签中key属性对应的值.
显示效果:
对应xml文件: