我在我的应用程序中使用偏好概念(listpreference)。当我从列表中选择特定选项时,我想做一些事情所以请告诉我这怎么可能?
问问题
997 次
3 回答
2
startDatePref = findPreference("time");
...
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
Preference preference) {
if (preference == startDatePref) {
// your action
}
return super.onPreferenceTreeClick(preferenceScreen, preference);
}
于 2010-11-04T19:43:20.997 回答
0
让您的偏好活动实现 onPreferenceChangeListener ,然后您需要通过 onCreate 中的键找到偏好并注册侦听器。
于 2010-07-31T19:43:19.030 回答
0
看看那个帖子:
要从代码中读取这些首选项,我们应该创建一个 getPrefs() 方法,我们可以在 onStart() 方法中调用它。当我们在 onStart() 方法而不是 onCreate() 中调用它时,我们可以确保在我们设置它们并返回到我们的主活动时加载首选项,
private void getPrefs() {
// Get the xml/preferences.xml preferences
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(getBaseContext());
CheckboxPreference = prefs.getBoolean("checkboxPref", true);
ListPreference = prefs.getString("listPref", "nr1");
editTextPreference = prefs.getString("editTextPref",
"Nothing has been entered");
ringtonePreference = prefs.getString("ringtonePref",
"DEFAULT_RINGTONE_URI");
secondEditTextPreference = prefs.getString("SecondEditTextPref",
"Nothing has been entered");
// Get the custom preference
SharedPreferences mySharedPreferences = getSharedPreferences(
"myCustomSharedPrefs", Activity.MODE_PRIVATE);
customPref = mySharedPreferences.getString("myCusomPref", "");
}
于 2010-07-31T09:05:47.467 回答