Android设置中的Preferencescreen用法介绍与分析

Android设置中的Preferencescreen用法介绍与分析使用PreferenceScreen之前简单的介绍一下,PreferenceScreen它不仅可以作为设置界面显示,而且还能够启动activity以及内嵌View和用layout方式一样,代码很简单。和以往界面最大的区别是,我们对checkbox进行选择或者对ringtone进行选择后,这个选择结果是被保留的,当我们退出actitvity后再次进入,上次的选项依然保留,我们重新向模

使用PreferenceScreen之前简单的介绍一下 ,



PreferenceScreen它不仅可以作为设置界面显示,而且还能够启动activity 以及内嵌View

和用layout方式一样,代码很简单。和以往界面最大的区别是,我们对checkbox进行选择或者对ringtone进行选择后,这个选择结果是被保留的,当我们退出actitvity后再次进入,上次的选项依然保留,我们重新向模拟器load应用,发现之前的选项仍然存在。我们可以利用preference,而无须人工对数据进行保存和读取,很是方便。


preference都应用在什么场景呢?
一般用在对用户的设置信息进行保存

       这得从android对preference的实现说起,实际上,preference所存储的数据最后都会以xml文件格式的形式进行保存,而且其只能 保存一些基本格式的数据。例如string/boolean……。该xml文件存放的位置在data/data/你应用的包名/shared_prefs 文件夹下。



       种种的限制与实现机制表明了,preference非常适合于参数设置功能。实际上,它也确实是干这个的,我们通过使用preference可以迅速的将某些值保存进xml文件中,然后我们可以读取这些设置信息进行相应的操作。

好了,,开始上代码

package com.example.preferencescreentest;

public class MainActivity extends PreferenceActivity{
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        addPreferencesFromResource(R.xml.mypreferencescreen);

    }
}

使用PreferenceScreen 首先继承PreferenceActivity 然后添加preferencescreen的配置文件

addPreferencesFromResource(R.xml.mypreferencescreen); 和Activity的setContentView(R.layout.activity_main);一样用法

加载了运行就是一下的界面

     


Android设置中的Preferencescreen用法介绍与分析 


Android设置中的Preferencescreen用法介绍与分析 





界面看完了,,好了配置的代码送上



配置之前我们得在res目录新建一个XML文件

如下图 
Android设置中的Preferencescreen用法介绍与分析 







<?xml version=”1.0″ encoding=”utf-8″?>

<!– preference的组织方式有

PreferenceScreen和PreferenceCategory,PreferenceCategory是带层次组织关系,

在后面的例子体验,而PreferenceScreen就是最平白和基础的方式 

特性                                                                           说明 

android:key                       选项的名称或键(比如selected_flight_sort_option) 



android:title                     选项的标题 



android:summary                   选项的简短摘要 



android:entries                   可将选项设置成列表项的文本 



android:entryValues               定义每个列表项的值。注意:每个列表项有一些文本和 一 个 值。 文本由

  

entries                           定义,值由entryValues定义。 



android:dialogTitle               对话框的标题,在视图显示为模态对话框时使用 



android:defaultValue              项列表中选项的默认值 







–>

<PreferenceScreen 

    xmlns:android=”
http://schemas.android.com/apk/res/android

    android:title=”第一层PreferenceScreen”

    android:summary=”这是第一层PreferenceScreen ”

    >

    <!– 有四个基本组建,很容易理解,RingtonePreference是选择铃音,这里给出两个选择,系统默认的铃音和无声 –>

    <CheckBoxPreference android:key=”checkbox”

        android:title=”CheckBox Preference”

        android:summary=”复选款”/>

    <RingtonePreference android:key=”ringtone”

        android:title=”Ringtone Preference”

        android:showDefault=”true”

        android:showSilent=”true”

        android:summary=”选择铃声”/>
       <PreferenceCategory android:title=”PreferenceCategory可以将几个组件组在一起”>

            <CheckBoxPreference android:key=”checkbox” android:title=”复选框”  />

            <RingtonePreference android:key=”ringtone” android:title=”选择铃声”  />

       </PreferenceCategory>

       

       <PreferenceCategory android:title=”也可以内嵌的PreferenceScreen”>

           

           <PreferenceScreen android:title=”内嵌的PreferenceScreen点击后进入一个新的页面”>

               <CheckBoxPreference android:key=”checkbox2″

                   android:title=”Another Checkbox”

                   android:summary=”最里层的PreferenceScreen的CheckBoxPreference”/>

           </PreferenceScreen>

       </PreferenceCategory>

    

       

       

       

       <PreferenceCategory android:title=”实验另外的两个组建EditText和List”>

           <EditTextPreference android:key=”text”

               android:title=”EditTextPreference”

               android:summary=”点击进行编写”

               android:dialogTitle=”内容”/>

           <ListPreference android:key=”list”

               android:title=”ListPreference”

               android:summary=”点击进行选择”

               android:entries=”@array/cities”

               android:entryValues=”@array/airport_codes”

               android:dialogTitle=”提醒的天数”/>

       </PreferenceCategory>

       

          <PreferenceCategory android:title=”还可以内嵌PreferenceScreen来跳转intent”>

            <PreferenceScreen android:title=”跳转Intent” >

                <intent

                  android:targetPackage=”com.example.preferencescreentest”

                  android:targetClass=”com.example.preferencescreentest.OtherA”

                ></intent>

                

            </PreferenceScreen>  

        

         </PreferenceCategory>

       

       <PreferenceCategory android:title=”打开网页”>

        <PreferenceScreen android:title=”也可以链接网页” android:summary=”反馈建议”>

            <intent android:action=”android.intent.action.VIEW” android:data=”
http://www.baidu.com/” />

        </PreferenceScreen>

        </PreferenceCategory>

        

        <PreferenceCategory android:title=”定义一个layout”>

       <Preference android:title=”定义一个View”  

        android:layout=”@layout/text_view”

        android:icon=”@drawable/ic”

        >

           

       </Preference>

       </PreferenceCategory>

       

</PreferenceScreen>



今天上传不了源码附件。所以下次补上。,见谅





补上源码 一个仿 QQ 设置界面 
Android设置中的Preferencescreen用法介绍与分析 
QQUIDemo.rar (746.05 KB, 下载次数: 257) 




QQ截图20121121161707.png (12.64 KB, 下载次数: 32)

QQ截图20121121161707.png

今天的文章Android设置中的Preferencescreen用法介绍与分析分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/26106.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注