Android中Preference标签的使用

         在学习android开发的过程中,我们经常会先看各种各样的源码,这是一种学习的方法,也可以提高自己的编程水平。我们会经常读到Setttings的源码,初始的时候我不是很懂这一块代码,为此我上网上搜了相关的知识,虽不是很全,但也对preferenceScreen和preferenceCategory有了大概的了解。故转载如下,有时间自己在补充一点细节

      转载地址: http://www.linuxidc.com/Linux/2015-03/114786.htm

首先在res目录下,新建一个命名为xml的文件夹,然后建立一个aaa.xml文件,选择resource标签。

先使用PreferenceCategory,代码如下

1 <PreferenceCategory Android:title="显示一排偏好" >
2         <CheckBoxPreference
3             android:key="checkbox_pre"
4             android:summary="这是一个开关按钮"
5             android:title="开关偏好" />
6     </PreferenceCategory>

效果图:

 

PreferenceCategory相当于分组,把同一类的选项放在同一块区域。 

再来看看PreferenceScreen,代码如下

1 <PreferenceScreen
2             android:key="screen_pre"
3             android:summary="显示另一个偏好屏幕"
4             android:title="屏幕" >
5             <CheckBoxPreference
6                 android:key="next_screen_checkbox_pre"
7                 android:summary="另一个屏幕上的偏好"
8                 android:title="开关偏好" />
9         </PreferenceScreen> 

如图,,然后发现没有checkbox显示 

因为PreferenceScreen是可以点进去的,点击该选项,进入就可以看到checkbox了 

然后看看ListPreference,一般都嵌在PreferenceScreen中使用,看起来比较舒服,代码如下

<PreferenceScreen android:title="基于对话框的偏好" > 
<ListPreference
            android:dialogTitle="选择一个"
            android:entries="@array/auto_update_frequency_entry"
            android:entryValues="@array/auto_update_frequency_value"
            android:key="list_pre"
            android:summary="使用一个列表对话框"
            android:title="列表偏好" >
        </ListPreference>
</PreferenceScreen>

点击该screen,listPreference会像dialog一样弹出来,如图 

 

android:entries和android:entryValues两个属性的值来源:

在values目录下建立一个array.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="auto_update_frequency_entry">
        <item >10分钟</item>
        <item >30分钟</item>
        <item >1小时</item>
        <item >12小时</item>
        <item >24小时</item>
    </string-array>
    <string-array name="auto_update_frequency_value">
        <item >10</item>
        <item >30</item>
        <item >60</item>
        <item >720</item>
        <item >1440</item>
    </string-array>
</resources> 

目前大概就了解了这些,以后有什么再补充


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值