2

当我打电话给意图时

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>
}

我在哪里以及如何调用 registerOnSharedPreferenceChangeListener

4

1 回答 1

2

在您的情况下,它将是这样的:

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在更改、添加或删除共享首选项时调用。即使将首选项设置为其现有值,也可能会调用它。

于 2010-07-18T03:10:49.510 回答