PreferenceActivity和PreferenceFragment对比

(4) 2024-04-19 15:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说PreferenceActivity和PreferenceFragment对比,希望能够帮助你!!!。

目录

 

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

 

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复