@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);//activity_main里必须存在id为android.R.id.list的ListView否则报E/AndroidRuntime: Caused by: java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'
addPreferencesFromResource(R.xml.test_preference);
mContext=getApplicationContext();
preference=findPreference(PREFERENCE_KEY);
preference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
//如果值改变了我们可以通过这个事件来获取新值
Toast.makeText(mContext, String.format("Preference的值为%s", newValue),Toast.LENGTH_LONG).show();
return true;
}
});
//设置Preference的点击事件
preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
//当接收到Click事件之后触发
Toast.makeText(mContext, "Preference Clicked",Toast.LENGTH_LONG).show();
return true;
}
});
}

xml属性 说明
true时,系统会帮助我们去保存该设置,即使重启后依然能记忆之前的设置,这也是所谓的持久化 。这里 将 android:persistent设置为False,表明不需要让系统去做持久化,开发者系统通过自己的方式去实现持久化。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="PreferenceScreen">
<PreferenceCategory
android:key="key_prerence"
android:summary="Preference Categories Summary"
android:title="Preference Categories">
<CheckBoxPreference
android:icon="@mipmap/ic_launcher"
android:key="key_chkpreference"
android:title="CheckBoxPreferenceCheckBoxPreferenceCheckBoxPreferenceCheckBoxPreference"
android:summary="CheckboxPreference summary"/>
<Preference
android:title="Preference"
android:key="key_pre"
android:icon="@mipmap/ic_red_launcher"
android:layout="@layout/activity_main"
/>
<EditTextPreference
android:icon="@mipmap/ic_blue_launcher"
android:key="key_edtkpreference"
android:title="EditPreference"
android:summary="EditPreference summary"
/>
</PreferenceCategory>
</PreferenceScreen>
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-49635-4.html
爱你一生不后悔