Preference的使用(大部分使用在设置Settings首选项)

Preference直译为偏好,建议翻译为首选项。一些配置数据,一些我们上次点击选择的内容,我们希望在下次应用调起的时候依然有效,无须用户再一次进行配置或选择。Android提供preference这个键值对的方式来处理这种情况,自动保存这些数据,并立时生效,同时Android提供一种类似的layout的方式来进行Prefernce的布局。

1、概述

主题只有一个另一种构建UI的方式——通过preference去构建UI,而不是直接通过layout方式(preference但也是间接通过Activity去展示)

如下图所示Preference作为该家族的终极基类,直接继承Object,其他子类Preference直接或者间接继承于Preference。他们的作用就是定义要显示的UI(其实作用类似于普通的Layout布局文件),特殊之处在于定义好了UI之后再在PreferenceActivity里以ListView的形式整体布局,每一个子Preference相当于是一个列表项。另外Preference还提供了一个SharedPreference用于保存/读取数据,以其key属性作为SharedPreference的键。还有一点Preference所存储的数据最后都会以xml文件格式的形式进行保存,而且其只能 保存一些基本格式的数据。例如string/boolean等等。该xml文件存放的位置在data/data/你应用的包名/shared_prefs 文件夹下。

  1. preference使用方法

一般在XML文件夹中创建xml文件来对Settings进行布局,布局文件中通常使用PreferenceScreen容器,PreferenceScreen包含多个 Preference控件,PreferenceCategory可以设置分类标题。

  1. preference常用控件

Preference 控件家庭          View控件家庭         控件含义

Preference                  TextView              文本框

CheckPreference              CheckBox              单选框

EditTextPreference           EditText               输入文本框

ListPreference               ListView               列表框

RingtonePreference          ——                    铃声

PreferenceCategory        类似于LinearLayou、RelativeLayout,用于组合一组Preference,使布局更具备层次感 。

PreferenceScreen            所有Preference元素的根节点

上面控件等同Layout布局中的View,PreferenceScreen 等同Layout布局中的ViewGroup。在Android 3.0之前需要继承PreferenceActivity(此方法不是太推荐使用,已被启用),3.0之后更高版本,则需要继承Activity,使用Fragment控制布局,然后实现不同控件的处理事件。

第二个表六个控件是preference的单一控件,preferenceScreen(最平白和基础的方式)与PreferenceCategory(带有层次感的方式)这两个控件是组合控件

  1. Perference常用使用方法如下两种:
  1. 使用XML定义Preference
           2、使用Fragment 定义Preference
  1. 自我理解总结

Preference在安卓中可以翻译为首选项。Preference是android app中重要的控件之一,Settings模块大部分都是通过Preference实现。自己配置好的一些设置,可以通过preference来实现再一次调用应用时还是自己一开始配置的数据,无需再一次配置或者选择;android提供preference键值对的方式来处理这种情况,自动保存数据,并立时生效,同时android提供一种类似的layout的方式来进行Preference的布局(即相当于另一种构建UI的一种方式,通过preference去构建,而不是直接通过layout方式)

Android之Preference的使用相关推荐

  1. Android进阶——Preference详解之Preference系的基本应用(三)

    引言 前面一篇文章Android进阶--Preference详解之Preference系的基本应用和管理(二)介绍了二级Preference的使用和特点,接下来进入系统给我提供的底级Preferenc ...

  2. Android 自定义Preference 讲解

    1. 前言 近期看见XX款平板上, 设置中手势导航和虚拟三键导航的切换选项,觉得效果做的非常好,然后想在源码中倒腾一下,仿照写一个效果图出来,本篇文章在android11 Settings源码中做的功 ...

  3. android preference-headers 字体颜色,android 批改preference中view属性(title,summary字体颜色等)...

    当前位置:我的异常网» Android » android 批改preference中view属性(title,summary字 android 批改preference中view属性(title,s ...

  4. Android应用Preference相关及源码浅析(Preference组件家族篇)

    | public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) | @ ...

  5. Android中Preference,preferenceActivity,PreferenceFragment等的使用

    本文转自android 官方翻译过来的文本: 这里的话,只谈几个需要注意的问题: (1)这篇文章中也谈到的: 您必须将 XML 文件保存在 res/xml/ 目录中.尽管您可以随意命名该文件,但它通常 ...

  6. Android的Preference的使用和监听事件

    学习了Preference的用法,这里记录下来供大家参考. 继承结构图 1.基本组成的使用 1.1组织方式(组合控件) PreferenceScreen:最平白和基础的方式 PreferenceCat ...

  7. Android进阶——Preference详解之初识Preference及Preference系(一)

    引言 很久没来得及更新博客了,时间总是不够,以前的知识还没来得及总结完毕,新的知识又源源不断地接触到,工作也很忙,但还是没有忘记自己最低点目标每个月至少四篇.好了,废话就到这里啦,开始进入正文,这篇文 ...

  8. android preference属性,Android进阶——Preference详解之Preference系的基本应用和管理(二)...

    并非我们第一次打开相应界面之后就会自动创建对应的SharedPreferences文件,而是在我们改变了原有状态时候喎�"/kf/ware/vc/" target="_b ...

  9. Android中Preference的使用以及监听事件分析

                                                                                                        ...

最新文章

  1. 60岁代码匠的几篇小作文,解决了大多数程序的迷茫(下)
  2. CSS 居中完全指南
  3. react-native-image-picker 运用launchCamera直接调取摄像头的缺陷及修复
  4. 第10章:项目沟通管理和干系人管理-章节重点
  5. 解决 Let’s Encrypt SSL 证书配置错误
  6. kmeanssklearn实例_sklearn实践(一):kmeans聚类
  7. c/c++语言程序设计题库,CD2_计算机实践《C/C++语言程序设计》_题目列表.doc
  8. Opencv之以图像直方图可视化
  9. 2017 年最受欢迎的 10个编程挑战网站
  10. D - 昂贵的聘礼(最短路径)
  11. php word 简历模板,php程序员简历模板
  12. 94 - 绘制谢尔宾斯基三角形
  13. WebApi-05 (三大家族及轮播图案例分享)
  14. 将淘宝客数据导入自己的数据库
  15. java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit异常解决
  16. 只读ppt如何获得可编辑版本?
  17. 企业微信的渠道活码怎么用?到底有什么好处?
  18. echarts 3D圆柱形图 实现简单 带图例完美显示隐藏
  19. 【翻译】--19C Oracle 安装指导
  20. 微信官方开发者工具如何导入小程序源码demo

热门文章

  1. 中秋节,福利到,节日快乐
  2. Jinja2 简明使用手册
  3. Ormlite 学习
  4. 安慰剂检验(stata)
  5. mysql中count()函数用法:count(1)和count(*)有什么区别?
  6. CVPR 2021论文解读 | 长尾分布问题解决新思路
  7. 马斯克最大的挑战是什么?
  8. C++ 模拟键鼠详细总结
  9. GStreamer 安装
  10. Spring基本了解与导包