Android 偏好。如何在设置了 SummaryProvider 的情况下强制更新首选项的摘要?
Android Preference. How to force update summary for the preference with SummaryProvider setted?
我使用 SimpleSummaryProvider
:
修改了 EditTextPreference
<NumberPreference
android:key="pref_key"
android:defaultValue="0"
android:title="Some title"
app:useSimpleSummaryProvider="true"/>
如果我以编程方式更改此首选项(例如在 onSharedPreferenceChanged
事件中),则图形界面中的摘要将不会更新。有没有办法通知 Preference 小部件它需要再次读取值并将其显示在摘要中?没有手动为摘要分配特定值?
我正在使用 PreferenceFragmentCompat
和修改后的 EditTextPreference
以及修改后的 EditTextPreferenceDialogFragmentCompat
。
我查看了 Android 来源 (EditTextPreferenceDialogFragmentCompat.java) - 更改设置的对话框如何通知 EditTextPreference 值更改。效果也不错 :)
if (editTextPreference().callChangeListener(value)) {
editTextPreference().setText(value);
}
我使用 SimpleSummaryProvider
:
EditTextPreference
<NumberPreference
android:key="pref_key"
android:defaultValue="0"
android:title="Some title"
app:useSimpleSummaryProvider="true"/>
如果我以编程方式更改此首选项(例如在 onSharedPreferenceChanged
事件中),则图形界面中的摘要将不会更新。有没有办法通知 Preference 小部件它需要再次读取值并将其显示在摘要中?没有手动为摘要分配特定值?
我正在使用 PreferenceFragmentCompat
和修改后的 EditTextPreference
以及修改后的 EditTextPreferenceDialogFragmentCompat
。
我查看了 Android 来源 (EditTextPreferenceDialogFragmentCompat.java) - 更改设置的对话框如何通知 EditTextPreference 值更改。效果也不错 :)
if (editTextPreference().callChangeListener(value)) {
editTextPreference().setText(value);
}