V I J E S H
V I J E S H

Reputation: 7594

preference activity listener in android

I am using the following code for adding a listener in prefernceactivity. But its not working. Please give a idea for this.

public class Preference extends PreferenceActivity implements OnSharedPreferenceChangeListener {
OnSharedPreferenceChangeListener listener;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.settings);
    }
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
        String key) {
    // TODO Auto-generated method stub

}


}

Upvotes: 0

Views: 1223

Answers (1)

Dalmas
Dalmas

Reputation: 26547

You have to register your listener first.

The best way is to register it in onResume and unregister in onPause :

@Override
protected void onCreate(Bundle savedInstanceState) {
    //...
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
}

@Override
protected void onResume() {
    super.onResume();
    prefs.registerOnSharedPreferenceChangeListener(this);
}

@Override
protected void onPause() {      
    super.onPause();
    prefs.unregisterOnSharedPreferenceChangeListener(this);
}

Upvotes: 4

Related Questions