How to listen for preference changes within a PreferenceFragment?

前端 未结 9 2075
自闭症患者
自闭症患者 2020-11-28 19:16

As described here, I am subclassing PreferenceFragment and displaying it inside an Activity. That document explains how to listen for preference changes here, but only if yo

9条回答
  •  迷失自我
    2020-11-28 19:40

    I believe you just need to register/unregister the Listener in your PreferenceFragment and it will work.

    @Override
    public void onResume() {
        super.onResume();
        getPreferenceManager().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
    
    }
    
    @Override
    public void onPause() {
        getPreferenceManager().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
        super.onPause();
    }
    

    Depending on what you want to do you may not need to use a listener. Changes to the preferences are committed to SharedPreferences automatically.

提交回复
热议问题