class UserViewModel extends ViewModel{
appPrefs.registerOnSharedPreferenceChangeListener(preferenceChangeListener)
}}
private SharedPreferences.OnSharedPreferenceChangeListener preferenceChangeListener;
public void subscribe() {
preferenceChangeListener = (sharedPreferences, key) -> {
}
};
appPrefs.registerOnSharedPreferenceChangeListener(preferenceChangeListener);
};
public void unsubscribe(){
appPrefs.unregisterOnSharedPreferenceChangeListener(preferenceChangeListener);
}
subscribe() and unsubscribe() are called from Fragment onAttach() and onDetach() methods ,but not working when the state of the property is changed. And as you can see preferenceChangeListener is class member not a method property.
the value of preference is changed in another fragment, and when I'm navigating to another fragment and coming back preferenceChangeListener is null it initialized again in onAttach() ,I see the reason ,but I don't know how to overcome.