PerferenceActivity是什么?
其实 Android系统本身就大量用到了PreferenceActivity来对系统进行信息配置和管理,那么它是怎么保存数据的呢,如何创建PrefenceActivity的呢,更关键是怎样触发相应事件的呢(这些 大家 Google哈 网络是个好东西 动动鼠标 出来一大箩筐)
[img]http://dl.iteye.com/upload/attachment/448814/5ee8a221-13a7-37bf-bdf9-8e001662b857.jpg[/img]
我现在想把填的数据 在副标题上显示
如图
[img]http://dl.iteye.com/upload/attachment/448822/fac14c97-b7c3-3afa-b8a3-a8979b5e873d.jpg[/img]
具体做法如下
1 注册一个监听
listener里调用 putDefaultSummary(sharedPreferences,key);
2编写putDefaultSummary函数
其实 Android系统本身就大量用到了PreferenceActivity来对系统进行信息配置和管理,那么它是怎么保存数据的呢,如何创建PrefenceActivity的呢,更关键是怎样触发相应事件的呢(这些 大家 Google哈 网络是个好东西 动动鼠标 出来一大箩筐)
[img]http://dl.iteye.com/upload/attachment/448814/5ee8a221-13a7-37bf-bdf9-8e001662b857.jpg[/img]
我现在想把填的数据 在副标题上显示
如图
[img]http://dl.iteye.com/upload/attachment/448822/fac14c97-b7c3-3afa-b8a3-a8979b5e873d.jpg[/img]
具体做法如下
1 注册一个监听
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
putDefaultSummary(sp, "");
sp.registerOnSharedPreferenceChangeListener(listener);
listener里调用 putDefaultSummary(sharedPreferences,key);
2编写putDefaultSummary函数
private void putDefaultSummary(SharedPreferences sp,String key){
if ("".equals(key)) {
Map<String, ?> map=sp.getAll();
for (String str : map.keySet()) {
Preference preference= findPreference(str);
if (preference instanceof EditTextPreference){
preference.setSummary(sp.getString(str, ""));
}
}
}else {
Preference preference= findPreference(key);
if (preference instanceof EditTextPreference){
preference.setSummary(sp.getString(key, ""));
}
}
}