views:

56

answers:

1

When I call intent

public class TInfo extends ListActivity 
    implements OnSharedPreferenceChangeListener{

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
    initvars();
    setListAdapter(new TAdapter());  // class TAdapter extends ArrayAdapter<String>
}

where and how do I call registerOnSharedPreferenceChangeListener

A: 

In your case it will be something like this:

public class TInfo extends ListActivity 
    implements OnSharedPreferenceChangeListener{

    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        prefs = PreferenceManager.getDefaultSharedPreferences(this);
        initvars();
        setListAdapter(new TAdapter());  // class TAdapter extends ArrayAdapter<String>
    }

    @Override
    public void  onSharedPreferenceChanged  (SharedPreferences  sharedPreferences, String  key){
        // do whatever you want here
    }
}

onSharedPreferenceChanged is called when a shared preference is changed, added, or removed. This may be called even if a preference is set to its existing value.

Cristian