PreferenceFragment用来显示首选项的设置,效果图如下:

主布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity" ><fragmentandroid:id="@+id/fragment1"android:name="com.example.preferencefragment.prefe"//自己的包名和java文件android:layout_width="match_parent"android:layout_height="match_parent"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"/></RelativeLayout>

新建一个prefe.java类

package com.example.preferencefragment;import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import android.preference.PreferenceScreen;public class prefe extends PreferenceFragment {@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO 自动生成的方法存根
        super.onCreate(savedInstanceState);addPreferencesFromResource(R.xml.preferences);}}

在res文件夹下新建xml文件夹,命名为:preferences.xml

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" ><PreferenceCategory android:title="In-line preferences" ><CheckBoxPreferenceandroid:key="checkbox_preference"android:summary="这是一个复选框"android:title="复选框设置" /></PreferenceCategory><PreferenceCategory android:title="Dialog-based preferences" ><EditTextPreferenceandroid:dialogTitle="请输入你最喜欢的种族"android:key="edittext_preference"android:summary="一个使用了编辑文本对话框的例子"android:title="请输入你最喜欢的种族" /><ListPreferenceandroid:dialogTitle="请选择一项"android:entries="@array/cities"android:entryValues="@array/cities"android:key="list_preferenc"android:summary="一个使用了列表对话框的例子"android:title="请选择一项" /></PreferenceCategory><PreferenceCategory android:title="Launch preferences" > <!-- This PreferenceScreen tag serves as a screen break (similar to page break in word processing). Like for other preference types, we assign a key here so it is able to save and restore its instance state. --><PreferenceScreenandroid:key="screen_preference"android:summary="展示另一个首选项配置页面"android:title="页面首选项" > <!-- 你可以在这里放置更多的首选项内容,将被在下一个页面呈现出来 --><CheckBoxPreferenceandroid:key="next_screen_checkbox_preference"android:summary="在另一个页面展示但出于同一个层级的首选项配置"android:title="复选框设置" /></PreferenceScreen><PreferenceScreenandroid:summary="从一个意图中启动一个activity"android:title="意图首选项" ><intentandroid:action="android.intent.action.VIEW"android:data="http://www.baidu.com" /></PreferenceScreen></PreferenceCategory><PreferenceCategory android:title="Preference attributes" ><CheckBoxPreferenceandroid:key="parent_checkbox_preference"android:summary="这是一个可见的父类"android:title="父类复选框首选项" /><!-- 子类的可见类型是由样式属性定义的 --><CheckBoxPreferenceandroid:dependency="parent_checkbox_preference"android:key="child_checkbox_preference"android:layout="?android:attr/preferenceLayoutChild"android:summary="这是一个可见的子类"android:title="子类复选框首选项" /></PreferenceCategory></PreferenceScreen>

MainActivity.java

package com.example.preferencefragment;import android.os.Bundle;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import android.app.Activity;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.SharedPreferences;
import android.view.Menu;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO 自动生成的方法存根
        super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//加载PrefFragmentFragmentManager fragmentManager = getFragmentManager();FragmentTransaction transaction = fragmentManager.beginTransaction();prefe prefFragment = new prefe();transaction.add(R.id.fragment1, prefFragment);transaction.commit();//SharedPreferences sp=PreferenceManager.getDefaultSharedPreferences(this);//String name=sp.getString("key", "");
    }
}

转载于:https://www.cnblogs.com/hyyweb/p/5249473.html

Android PreferenceFragment相关推荐

  1. android fragment返回值,android – PreferenceFragment :: onPreferenceTreeClick返回值 – 它做什么?...

    调用它的代码在 Preference#performClick(PreferenceScreen preferenceScreen)中,它执行以下操作: PreferenceManager prefe ...

  2. Android’s PreferenceActivity for all API versions

    官方文档 I have spent the last few days learning about how to use the new Android PreferenceFragment whi ...

  3. android 切换 preferencefragment,Android PreferenceActivity与PreferenceFragment详解及简单实例_Android_脚本之家...

    Android  PreferenceActivity与PreferenceFragment 前言 转来转去又回到了Android,闲话少说,这里是参考Android原生的Settings应用来介绍一 ...

  4. Android数据存储(二)----PreferenceFragment详解

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  5. Android设置页面PreferenceFragment使用详细+代码分析

    Android设置页面PreferenceFragment使用详细 文章目录Android设置页面PreferenceFragment使用详细一 设置页面核心代码二 设置页面布局核心代码三Settin ...

  6. android 切换 preferencefragment,Android之PreferenceFragment使用方法

    PreferenceFragment Android应用程序通常要提供首选项,以允许用户定制应用程序. 例如,可以允许用户保存那些用于访问Web资源的登录凭据, 等等. 在Android中,可以使用P ...

  7. android 关闭fragment,android – 关闭PreferenceFragment

    我又找了几个小时,没找到我理解/正在寻找的答案. 我有一个首选项屏幕,当用户点击菜单中的设置时会打开该屏幕.这有效. 但是,当他完成设置时,我如何才能最好地使用户关闭此屏幕. 我喜欢在Chrome中完 ...

  8. Android之PreferenceFragment详解

    [正文] 一.PreferenceFragment的引入: PreferenceActivity是一个非常有用的基类,当我们开发Android项目时避免不了选项设置,这些设置习惯用Preference ...

  9. Android 首选项框架及PreferenceScreen,PreferenceActivity,PreferenceFragment的用法与分析

    前言 <Android 4 高级编程(第3版)>第7章第5节讲到了首选项框架和PreferenceActivity概述等内容,因为第一次见到PreferenceScreen,还没用过,所以 ...

最新文章

  1. abb变频器acs800功率_ABB变频器如何选型(1)
  2. hdu5126stars
  3. 字节跳动攻城狮: 我整理了很久的Python面试指南,请查收!
  4. SourceTree与git及AndroidStudio的联合使用详解(Windows系统)
  5. MFC工程按USB插口显示所有USB设备及插口(包括安卓)
  6. YOLOv4改进版重磅问世!Yolov4扩展版!Yolov4原班人马重磅推出Scaled-YOLOv4: Scaling Cross Stage Partial Network
  7. 14款荣耀/华为机型获版本升级: 适配FlyPods Pro骨声纹识别
  8. JUC本质解析+进程/线程
  9. XP引导Ubuntu--Ubuntu手记之系统配置
  10. 来自Airbnb、Netflix等公司的代码评审最佳实践
  11. V5Shop网店系统更新 版本V8.30.0606 RC1
  12. mysql webmail ubuntu12.04 imap_如何在Ubuntu 18.04 LTS上安装最新的Roundcube Webmail
  13. H.264之lookahead
  14. 千呼万唤始出来的京东HR面(2023暑期实习)
  15. 液晶显示器图像颜色发黄,菜单颜色正常
  16. 使用免费绿色工具chfs,将文件夹共享成网盘
  17. 密码学系列 - 椭圆曲线签名的基本原理
  18. ribbon服务列表和nacos服务列表不一致的问题
  19. 除了加班、掉头发,程序员还在承受些什么?
  20. 使用python-opencv告警QObject::moveToThread

热门文章

  1. datepick二格式 化时间_Date日期格式转换
  2. 2021年,入局直播电商是最好的时机吗?
  3. Microsoft store 无法连接网络
  4. 《Squeeze-and-Excitation Networks》SE-Net通道注意力机制
  5. 答读者问(6):单细胞TPM矩阵如何分析?
  6. ztree设置默认节点选中
  7. 互联网营销之用户标识
  8. 小马哥--高仿三星S5 9006 主板型号A215刷机拆机主板图与开机界面图
  9. 【docker】为什么docker无法删除容器,删除容器命令
  10. matlab资产投资组合计算,第5章matlab资产组合计算.ppt