Sharedpreferences Android监听器

时间:2014-03-20 22:59:32

标签: java android sharedpreferences

我看了一下,但我似乎并不了解如何实现共享首选项侦听器。我的代码是:

public class MusicPlayer extends Activity implements OnCompletionListener {
    public static SharedPreferences settings;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    ...
     AndroidBuildingMusicPlayerActivity.settings = getPreferences(MODE_PRIVATE);
    .....
}

public void onPreferenceChangeListener(SharedPreferences sharedPreferences, String key) {
       //Do something here

}

我想要做的是在其他地方,如果触发了某些事情,共享优先键保持不变,但值会改变,我需要这个值 出于某种原因,我的听众从未真正打过电话。我尝试了其他一些方法,但我想我可能做错了。关于我如何让听众工作或者有谁知道问题是什么的任何建议?

任何帮助都会很棒

感谢

PS。我没有扩展应该导致问题的PreferenceActivity吗?我试过,但我的程序然后崩溃

1 个答案:

答案 0 :(得分:0)

我假设您想要一个用于Sharedpreferences设置的监听器。这可以通过创建像

这样的监听器来完成
listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
 public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
   public void onSharedPreferenceChanged(
        SharedPreferences prefs, String key) {

        System.out.println(key);
 }
};
settings.registerOnSharedPreferenceChangeListener(listener);