如何在Android上的自定义首选项活动中刷新特定首选项?

如何在Android上的自定义首选项活动中刷新特定首选项?,android,preferenceactivity,preference,Android,Preferenceactivity,Preference,首先获取您的首选项,然后添加/删除它 密钥来自preference.xml文件(或以您的命名方式) 不要忘记私有首选项变量: private Preference userColorPreference; 现在,在onSharedPreferenceChanged()方法中,需要“hack”以获得要刷新的首选项 @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, S

首先获取您的首选项,然后添加/删除它

密钥来自preference.xml文件(或以您的命名方式)

不要忘记私有首选项变量:

private Preference userColorPreference;
现在,在onSharedPreferenceChanged()方法中,需要“hack”以获得要刷新的首选项

  @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {        
        if (key.equals("color_preference")) {
            getPreferenceScreen().addPreference(userColorPreference);
            getPreferenceScreen().removePreference(userColorPreference);
        }
    }
这就是我想出的黑客解决方案


有人知道正确的方法吗?

您能提供更多的代码吗?什么是
用户颜色首选项
?您可以包含更多的代码吗?什么是
用户颜色首选项
private Preference userColorPreference;
  @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {        
        if (key.equals("color_preference")) {
            getPreferenceScreen().addPreference(userColorPreference);
            getPreferenceScreen().removePreference(userColorPreference);
        }
    }