Android中preference的使用(二)

鉴客 发布于 2011/11/14 14:26
阅读 24K+
收藏 12

继上篇文章 Android中preference的使用(一) ,在这篇文章中主要是学习下preference中各个节点的属性。PrefeneceActivity都提供了哪几种元素可供使用。点击Add按钮,在打开的新窗口中可以看到以下几项:

1. CheckBoxPreference:CheckBox选择项,对应的值的ture或flase。如图:

2. EditTextPreference:输入编辑框,值为String类型,会弹出对话框供输入。如图:

 

 

3. ListPreference: 列表选择,弹出对话框供选择。如图:

 

4. Preference:只进行文本显示,需要与其他进行组合使用。

 

5. PreferenceCategory:用于分组。效果如下:

 

6. PreferenceScreen:PreferenceActivity的根元素。

 

7. RingtonePreference:系统玲声选择。

 

下面我们来分析各个节点的属性:

PreferenceCategory属性分析:

title:显示的标题

key:唯一标识(至少在同一程序中是唯一),SharedPreferences也将通过此Key值进行数据保存,也可以通过key值获取保存的信息 (以下相同)

CheckBoxPreference属性分析:

Key:唯一标识

title:显示标题(大字体显示)

summary:副标题(小字体显示)

defaultValue:默认值(当然,此处只能是true或false了)

 

Preference属性分析: Key:唯一标识.

title:显示标题(大字体显示)

summary:副标题(小字体显示)

dependency:附属(嘛意思),即标识此元素附属于某一个元素(通常为CheckBoxPreference),dependency值为所附属元素的key。上面代码中的Preference元素附属于key等于“apply_bluetooth”的CheckPreference元素,当CheckPreference值为true时,Preference则为可用,否则为不可用。

 

EditTextPreperence属性分析

Key:唯一标识.

title:显示标题(大字体显示)

ListPreference属性分析:

Key:唯一标识.

title:显示标题(大字体显示)

dialogTitle:弹出对话框的标题

entries:列表中显示的值。为一个数组,通读通过资源文件进行设置。

entryValues:列表中实际保存的值,也entries对应。为一个数组,通读通过资源文件进行设置。以下代码显示的是arrays.xml文件中内容:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="department">
  <item>综合部</item>
  <item>外贸部</item>
  <item>行政部</item>
</string-array>
<string-array name="department_value">
  <item>001</item>
  <item>002</item>
  <item>003</item>
</string-array>
</resources>

RingtonePreference 属性分析

铃声(暂时没有用到过),暂时略过。

如何响应PreferenceActivity的操作

只要重写PreferenceActivity的 onPreferenceTreeClick的方法就可以了,通过参数preference来判断是对那一个元素进行的,并根据需要进行操作。代码如下:

@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
			Preference preference) {
	// TODO Auto-generated method stub
	return super.onPreferenceTreeClick(preferenceScreen, preference);
}

这样到此为止,我们在APP中就实现了设置功能。

文章出处:http://blog.csdn.net/cjjky/article/details/6462715

加载中
0
小小码农之菜鸟

写的很好,谢谢啦

0
小小的她
很详细,值得学习!
返回顶部
顶部