文档章节

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

c
 chuiyuan
发布于 2014/07/18 23:10
字数 665
阅读 100
收藏 8

  在Android系统源码中,绝大多数应用程序的UI布局采用了Preference的布局结构,而不是我们平时在模拟器中构建应用程序时使用的View布局结构,例如,Setting模块中布局。当然,凡事都有例外,FMRadio应用程序中则使用了View布局结构(可能是该应用程序是marvel公司提供的,如果由google公司做,那可说不准)。归根到底,Preference布局结构和View的布局结构本质上还是大同小异,Preference的优点在于布局界面的可控性和高效率以及可存储值的简洁性(每个PreferenPreferencece存储在相对应下的SharedPreference文件夹下)。 下面,我们对比Preference和View下得各个子控件,对他们的家庭元素在宏观上有个更好的把握性。

     单一控件:

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

                          Preference                  TextView           文本框

                          CheckPreference             CheckBox           单选框

                          EditTextPreference          EditText          输入文本框 

                          ListPreference              ListView          列表框

                          RingtonePreference          ——               铃声

          其实在Android源码系统中还有很多的”未完工”的Preference, 没有为它们提供PI接口,例如SeekBarPreference,

       有兴趣的同学可以参考源码,具体路径为:frameworks/base/core/java/preference。

组合控件:

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

              PreferenceScreen  : 所有Preference元素的根节点。

  

   显示Preference布局结构的方法为:

           使我们的Activity继承PreferenceActivity,然后在onCreate()方法中通过   

      addPreferencesFromResource(R.xml.custom_preference) (我们自定义的Preference 布局)。

      怎么样,是不是似曾相识?稍后会用一个Demo来为您详述。

  

   Preference元素的通用XML Attributes说明:    

        android:key :          每个Preference控件独一无二的”ID”,唯一表示此Preference。          

         android:defaultValue : 默认值。 例如,CheckPreference的默认值可为”true”,默认为选中状态;

                                             EditTextPreference的默认值可为”110” 。

         android:enabled :      表示该Preference是否可用状态。     

         android:title :        每个Preference在PreferenceScreen布局上显示的标题——大标题

         android:summary :      每个Preference在PreferenceScreen布局上显示的标题——小标题(可以没有)

         android:persistent:    表示Preference元素所对应的值是否写入sharedPreferen文件中,如果是true,则表示写

                                       入;否则,则表示不写入该Preference元素的值。

         android:dependency:    表示一个Preference(用A表示)的可用状态依赖另外一个Preference(用B表示)。B可用,

                                              则A可用;B不可用,则A不可用。

         android:disableDependentsState:  与android:dependency相反。B可用,则A不可用;B不可用,则A可用。

  

   常用的方法则包括:

                getKey()            setKey()

             getSummary()        setSummary()

             getText()           setText()


本文转载自:转自http://blog.csdn.net/qinjuning

上一篇: Android Dependencies
下一篇: pulltorefresh学习
c
粉丝 9
博文 92
码字总数 40993
作品 0
海淀
私信 提问
Android中Preference的使用以及监听事件分析

在Android系统源码中,绝大多数应用程序的UI布局采用了Preference的布局结构,而不是我们平时在模拟器中构建应用程序时使用的View布局结构,例如,Setting模块中布局。当然,凡事都有例外,F...

墨梅
2014/03/24
1K
1
android Preference 基础讲解

在Android系统源码中,绝大多数应用程序的UI布局采用了Preference的布局结构,而不是我们平时在模拟器中构建应用程序时使用的View布局结构,例如,Setting模块中布局。当然,凡事都有例外,F...

张林思密达
2015/11/19
40
0
android基础知识07:SharedPreferences和PreferenceActivity

本文主要介绍SharedPreferences和PreferenceActivity的基础知识和用法。 主要资料来源于网络,包括但不限于: 《Android之PreferenceActivity》 《在Android中Preferences数据存储的使用》 ...

迷途d书童
2012/03/23
8.7K
1
Android Preference使用

Android Preference经常使用在例如设置的功能,Android提供preference这个键值对的方式来处理这种情况,自动保存这些数据,并立时生效,这种就是使用android sharedpreferences方式进行保存的...

张林思密达
2015/11/19
145
0
android之Files,Saving State,Preferences(一)

保存简单的APP数据 1.Shared Preferences 是一个简单,轻量级的,以键值对的机制(name/value pair---NVP)存储一些基础数据(Boolean,string,float等),最常用在保存用户的APP参数。 2.保存...

Chanimalx
2013/01/27
492
0

没有更多内容

加载失败,请刷新页面

加载更多

分布式协调服务zookeeper

ps.本文为《从Paxos到Zookeeper 分布式一致性原理与实践》笔记之一 ZooKeeper ZooKeeper曾是Apache Hadoop的一个子项目,是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它...

ls_cherish
今天
4
0
redis 学习2

网站 启动 服务端 启动redis 服务端 在redis 安装目录下 src 里面 ./redis-server & 可以指定 配置文件或者端口 客户端 在 redis 的安装目录里面的 src 里面 ./redis-cli 可以指定 指定 连接...

之渊
昨天
2
0
Spring boot 静态资源访问

0. 两个配置 spring.mvc.static-path-patternspring.resources.static-locations 1. application中需要先行的两个配置项 1.1 spring.mvc.static-path-pattern 这个配置项是告诉springboo......

moon888
昨天
4
0
hash slot(虚拟桶)

在分布式集群中,如何保证相同请求落到相同的机器上,并且后面的集群机器可以尽可能的均分请求,并且当扩容或down机的情况下能对原有集群影响最小。 round robin算法:是把数据mod后直接映射...

李朝强
昨天
4
0
Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
昨天
24
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部