Android开发学习笔记:数据存取之Preference(健值对)浅析

一.Preference的简介

    Preference(配置)提供了一种轻量级的数据存取方法,主要应用于数据比较少的配置信息。它以“key-value”(是一个Map)对的方式将数据保存在一个XML配置文件中,例如,手机的开机问候语,可以将其以Preference方式来进行配置。也可以保存一些用户个性化设置的字体、颜色、位置等参数信息。

二.Preference存取数据的方法

使用到的接口:

    SharedPreferences接口和SharedPreferences.Editor接口,它们都是来自于andorid.content包。

①SharedPreferences接口提供保存数据的方法

       我们可以调用Context.getSharedPreferences(String name,int mode)方法得到SharedPreferences接口。该方法的第一个参数是文件名称,第二个参数是操作模式。操作模式有三种:

  • MODE_PRIVATE(私有)
  • MODE_WORLD_READABLE(可读)
  • MODE_WORLD_WRITEABLE(可写)

SharedPreferences接口的常用方法

方法名称

方法描述

edit()

返回SharedPreferences的内部接口SharedPreferences.Editor

contains(String key)

判断是否包含该键值

getAll()

返回所有配置信息Map

getBoolean(String key,Boolean defValue)

获得一个boolean值

getFloat(String key,float defValue)

获得一个float值

getInt(String key,int defValue)

获得一个int值

getLong(String key,long defValue)

获得一个long值

getString(String key,String defValue)

获得一个String值

 

②SharedPreferences.Editor接口提供获得数据的方法

    SharedPreferences.Editor接口中的getString(String key,String defValue)、getInt(String key,int defValue)等。调用SharedPreferences的edit()方法返回SharedPreferences.Editor内部接口,该接口中提供了保存数据的方法,如putString(String key,String value)、pubInt(String key,int value)等,调用该接口的commit方法可以将数据进行保存。

 

SharedPreferences.Editor接口常用的方法

方法名称

方法描述

clear()

清楚所有值

commit()

保存

getAll()

返回所有配置信息Map

putBoolean(String key,Boolean value)

保存一个boolean值

putFloat(String key,float value)

保存一个float值

putInt(String key,int value)

保存一个int值

putLong(String key,long value)

保存一个long值

putString(String key,String value)

保存一个String值

remove(String key)

删除该键对应的键

下面是保存临时记事本内容的例子

    当我们在手机上用记事本编写备忘录,日志的时候,突然要返回接电话,看短信的时候。我们就要停止编写,退出去听接电话,看短信。然而,当我们打完电话或者看完短信回来的时候,发现刚刚编写的内容还在记事本上,这就是Preference的作用了。

    创建一个Activity,在其中放置一个EditText保存短信内容,放置一个Button用于发送信息。在onCreate()中通过getSharedPreferences()方法获得SharedPreferences接口,调用接口的getString()方法,获得保存内容,将内容设置到EditText中。

    在onStop()方法中保存内容,使用getSharedPreferences().edit()方法获得SharedPreferences.Editor接口,调用SharedPreferences.Editor的putString()方法保存短信内容,调用commit()方法提交内容。

MainActivity.java

main.xml

效果图:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2014年3月20日
下一篇 2014年3月20日

相关推荐