我有我的prefence的选择是这样的:的Android PreferenceActivity
public class Opciones extends PreferenceActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.opciones);
SharedPreferences sp = getPreferenceScreen().getSharedPreferences();
EditTextPreference editTextPref = (EditTextPreference) findPreference("opcCodigo");
editTextPref.setSummary(sp.getString("opcCodigo", ""));
EditTextPreference editTextPref2 = (EditTextPreference) findPreference("opcUrl");
editTextPref2.setSummary(sp.getString("opcUrl", ""));
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
Preference pref = findPreference(key);
if (pref instanceof EditTextPreference) {
EditTextPreference etp = (EditTextPreference) pref;
pref.setSummary(etp.getText());
}
}
}
的事实是,当我改变数据时,不会刷新,我不得不关闭该活动,并重新启动后才可以看到它们。
我错过了什么?
在此先感谢
为什么这是公认的答案? PreferenceActivity甚至没有可以覆盖的onPreferenceChange()方法。 – mpellegr 2013-08-13 15:56:51
@mpellegr感谢您指出!现在编辑答案。 – Renjith 2013-08-19 12:43:47