在SettingsFragment中更新自定义DialogPreference的标题

时间:2012-11-02 18:02:49

标签: android

我有PreferenceActivity根据DialogPreference显示多个自定义类。它们从PreferenceActivity显示为TextView,当单击时,会显示一个允许用户设置值的对话框。我希望PreferenceActivity中显示的视图包含设置的标题(即“音量”)及其值(“响亮”)。对于来自setTitle()的{​​{1}}和getTitle()并不难。这适用于最初查看Preference,但是一旦我进行了更改并从我的自定义对话框返回PreferenceActivity,标题就不会更新。我已经尝试在值更改时更新它,并且当对话框被解除时,但是直到再次单击该设置时才会更新(在它再次显示该对话框之前的瞬间)。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您必须从PreferenceActivity手动更新自定义视图。例如,对于ListDialog,您可以执行以下操作:

 ListPreference myList = (ListPreference) findPreference("listPref");
 myList.setSummary(your_string);

对于editText:

EditTextPreference myEditTextPref = (EditTextPreference)findPreference("myEditText");

使用findPreference()方法并使用其方法setSummary(),setTile()等更新视图。