gpt4 book ai didi

android - 实时更新偏好

转载 作者:行者123 更新时间:2023-11-29 16:19:54 25 4
gpt4 key购买 nike

我有一个首选项屏幕,其中有一些相互关联的首选项。这意味着,如果我有 pref xy,我有时需要 yx 更改时更改为某些内容.

我现在正在做的是监听 prefs change 事件,然后这样做:

SharedPreferences.Editor editor = prefs.edit();
editor.putString("y_pref", "somevalue");
editor.commit();

问题是,要真正看到更改,我必须先关闭首选项屏幕然后再次打开它,只有这样我才能看到新设置的首选项。

有没有办法更改首选项,以便立即看到更改,而无需重新加载首选项屏幕?

最佳答案

尝试调用首选项本身的 setter 而不是自己更新它:

例如EditTextPreference . setText() .所以偏好本身也会更新它自己的值(value)。如果您自己进行更新,首选项将不会获取新值,因为它甚至不知道持久值已更改。

如果您有一个PreferenceFragment,您可以通过PreferenceFragment.findPreference() 获得偏好。 .

如果您有一个PreferenceActivity,您可以通过PreferenceActivity.findPreference() 获得偏好。 .

您可以使用您在设置 XML 文件中分配的首选项键来调用它,并获得相应首选项的实例。然后将其转换为 CheckBoxPreferenceEditTextPreference 等(您在 XML 文件中设置的类型)。

关于android - 实时更新偏好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7603633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com