PreferenceActivity和PreferenceFragment对比
PreferenceActivity 负责加载选项列表界面布局文件
选项列表布局文件是以preference-headers作为根标签 header 作为子标签常用的属性有android:ico指定选项的图标,android:title指定选项的标题,android:summary指定选项的说明
PreferenceActivity使用界面布局文件的方式是:重写PreferenceActivity.onBuildHeaders(List
PreferenceFragment 负责加载选项设置界面布局文件
选项设置布局文件是以PreferenceScreen作为根标签,PreferenceCategory、CheckBoxPreference、EditTextPreference、ListPreference、SwitchPreference作为子标签
PreferenceFragment使用界面布局文件的方式是:重写onCreate(Bundle savedInstanceState)
并在方法中调用addPreferenceFromResource(R.xml.preference_option);
使用PreferenceActivity的步骤
1. 创建一个选项列表界面布局文件
A.在res目录上右击,在弹出的快捷菜单上选择new->Android Resource File,然后在弹出的对话框选择Resource type 为xml,Root element:选择preference-headers,然后输入File name 点击ok按钮
2. 创建一个Activity并继承PreferenceActivity
3. 重写PreferenceActivity的onBuildHeaders方法并在方法中调用loadHeadersFromResource()方法加载布局文件
代码如下:
package com.example.filedemo;import android.os.Bundle;import android.preference.PreferenceActivity;import java.util.List;public class PreferenceTestActivity extends PreferenceActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onBuildHeaders(List target) { super.onBuildHeaders(target); loadHeadersFromResource(R.xml.preference_list, target); } @Override protected boolean isValidFragment(String fragmentName) { return true; }}
使用PreferenceFragment的步骤
1. 创建一个选项设置界面布局文件
A.在res目录上右击,在弹出的快捷菜单上选择new->Android Resource File,然后在弹出的对话框选择Resource type 为xml,Root element:选择PreferenceScreen,然后输入File name 点击ok按钮
2. 创建一个Fragment并继承PreferenceFragment
3. 重写PreferenceFragment的onCreate方法并在方法中调用addPreferenceFromResource()方法加载布局文件
代码如下:
package com.example.filedemo;import android.os.Bundle;import android.preference.PreferenceFragment;import android.support.annotation.Nullable;public class BlankFragment extends PreferenceFragment { @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preference_option); }}
更多相关文章
- android sdk+eclipse+adt 配置与开发
- Unity3d 与 Android之间的互相调用
- 让Ubuntu和Android同时运行(Ubuntu on Android)
- 【Android】AIDL介绍和实例讲解
- Android问题笔记
- android button background图片被拉伸
- Android(安卓)中文 SDK —— ADT 14.0.0 (ADT14插件更新说明)
- 把应用跑在android上
- Android横向的选项卡