Android Preference

<?xml version="1.0" encoding="utf-8"?>
<!--
    android:key与android:id相似
    android:title标题
    android:summary简单说明
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
    <!-- 设置项 -->
    <Preference />
    <!-- 文本设置项 (点击弹出文本输入的Dialog)-->
    <EditTextPreference />
    <!-- CheckBox设置项 -->
    <CheckBoxPreference />
    <!-- list设置项 (点击弹出list选择项)-->
    <ListPreference />
    <!-- 铃声设置项 (点击弹出系统设置铃声Dialog)-->
    <RingtonePreference />
    <!-- 设置类别 (与Layout相似,可以包含其他设置项)-->
    <PreferenceCategory />
    <!-- 设置界面(设置根节点。如果是PreferenceScreen子项,点击可弹出另外一个设置界面) -->
    <PreferenceScreen />
</PreferenceScreen>

在项目工程res文件夹下新建xml目录,在里面新建preference文件,属性介绍如上。

创建Preference Activity

// 编写Activity继承PreferenceActivity,在onCreate方法中不用setContentView()方法,调用addPreferencesFromResource()方法。
public class Preferences extends PreferenceActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        super.addPreferencesFromResource(R.xml.preferences);
    }
}

增加事件

PreferenceActivity.findPreference(CharSequence) // 找到设置项
Preference.setOnPreferenceClickListener(OnPreferenceClickListener); // 给设置项增加click事件
Preference.setOnPreferenceChangeListener(OnPreferenceChangeListener); // 给设置项增加change事件
原文地址:https://www.cnblogs.com/smile365/p/3186393.html