3

我需要动态设置/取消设置侦听器以响应Preference CheckBox用户设置更改。

我见过的一种方法是使用onSharedPreferenceChanged()并检查该复选框的键。

但不知何故,这在我看来效率低下。我更多地考虑在派生的类上设置某种侦听器的方向PreferenceActivity。也许onContentChanged()

您会推荐哪种方法,为什么?

你能指出一个示例工作代码吗?

4

2 回答 2

4

你应该实施OnSharedPreferenceChangeListener. 然后设置一个监听器来捕捉关键变化:

getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);

您应该能够检索检查的更改:

public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key) 
{

}
于 2012-06-19T13:05:39.097 回答
0

这是文档。使用 XML 文件,您可以设置单击小部件时要执行的方法。设置android:onClick = foo将在单击小部件时执行该方法foo,并将参数传递给它View vv即被单击的视图。

于 2012-06-19T03:22:45.227 回答