PreferenceActivity和PreferenceFragment对比

本文详细介绍了Android中PreferenceActivity和PreferenceFragment的使用方法,包括如何创建选项列表和设置界面布局文件,以及具体的代码实现步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

 

PreferenceActivity 负责加载选项列表界面布局文件

使用PreferenceActivity的步骤

PreferenceFragment 负责加载选项设置界面布局文件

使用PreferenceFragment的步骤


PreferenceActivity 负责加载选项列表界面布局文件

选项列表布局文件是以preference-headers作为根标签,header 作为子标签常用的属性有android:ico指定选项的图标,android:title指定选项的标题,android:summary指定选项的说明。

PreferenceActivity使用界面布局文件的方式是:重写PreferenceActivity.onBuildHeaders(List<Header> target)并在方法中调用loadHeadersFromResource(R.xml.preference, target)方法加载布局文件。

使用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<PreferenceActivity.Header> target) {
        super.onBuildHeaders(target);
        loadHeadersFromResource(R.xml.preference_list, target);
    }

    @Override
    protected boolean isValidFragment(String fragmentName) {
        return true;
    }
}

 

PreferenceFragment 负责加载选项设置界面布局文件

选项设置布局文件是以PreferenceScreen作为根标签,PreferenceCategory、CheckBoxPreference、EditTextPreference、ListPreference、SwitchPreference作为子标签。

PreferenceFragment使用界面布局文件的方式是:重写onCreate(Bundle savedInstanceState)

并在方法中调用addPreferenceFromResource(R.xml.preference_option);

使用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);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值