正文
一、结构
public interfaceSharedPreferences
android.content.SharedPreferences
二、概述
三、内部类
interface SharedPreferences.Editor
用于修改SharedPreferences对象设定值的接口。
interface SharedPreferences.OnSharedPreferenceChangeListener
接口定义一个用于在偏好设定(shared preference)改变时调用的回调函数。
四、公共方法
public abstract booleancontains(String key)
判断preferences是否包含一个preference。
参数
key想要判断的preference的名称
返回值
如果preferences中存在preference,则返回true,否则返回false。
public abstract SharedPreferences.Editoredit()
针对preferences创建一个新的Editor对象,通过它你可以修改preferences里的数据,并且原子化的将这些数据提交回SharedPreferences对象。(译者注:原子化——作为一个整体提交,原子性)
注意:如果你想要在SharedPreferences中实时显示,刚通过Editor对象进行的修改,那么你必须调用commit()方法。
返回值
返回一个SharedPreferences.Editor的新实例,允许你修改SharedPreferences对象里的值。
public abstract Map<String, ?>getAll()
取得preferences里面的所有值
返回值
返回一个map,其中包含一列preferences中的键值对
异常
空指针异常(NullPointerException)
public abstract boolean getBoolean (String key, boolean defValue)
从preferences中获取一个boolean类型的值。
参数
key 获取的preference的名称
defValue当此preference不存在时返回的默认值
返回值
如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个boolean类型,则抛出ClassCastException。
异常
ClassCastException
public abstract float getFloat (String key, float defValue)
从preferences中获取一个float类型的值。
参数
key 获取的preference的名称
defValue当此preference不存在时返回的默认值
返回值
如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个float类型,则抛出ClassCastException。
异常
ClassCastException
public abstract intgetInt(String key, int defValue)
从preferences中获取一个int类型的值。
参数
key 获取的preference的名称
defValue当此preference不存在时返回的默认值
返回值
如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个int类型,则抛出ClassCastException。
异常
ClassCastException
public abstract longgetLong(String key, long defValue)
从preferences中获取一个long类型的值。
参数
key 获取的preference的名称
defValue当此preference不存在时返回的默认值
返回值
如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个long类型,则抛出ClassCastException。
异常
ClassCastException
public abstract StringgetString(String key, String defValue)
从preferences中获取一个String类型的值。
参数
key 获取的preference的名称
defValue当此preference不存在时返回的默认值
返回值
如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个String类型,则抛出ClassCastException。
异常
ClassCastException
public abstract voidregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener
listener)
注册一个回调函数,当一个preference发生变化时调用。
参数
listener将会被调用的回调函数
参见
unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)
public abstract voidunregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener)
注销一个之前(注册)的回调函数
参数
listener要被注销的回调函数
参见
registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)
五、补充
示例代码
译注:Shared Preferences保存位置:/data/data/app_name/shared_prefs/*.xml
privatebooleanflag=false;
//取得活动的Preferences对象
SharedPreferencessettings=getPreferences(Activity.MODE_PRIVATE);
//取得值
flag=settings.getBoolean(“flag”,false);
//取得活动的Preferences对象
SharedPreferencessettings=getPreferences(0);
//取得编辑对象
SharedPreferences.Editoreditor=settings.edit();
//添加值
editor.putBoolean(“true”,flag);
//提交保存
editor.commit();
分享到:
相关推荐
**Android的SharedPreferences详解** SharedPreferences是Android系统提供的一种轻量级的数据存储方式,它主要用于应用程序中简单数据的持久化存储,例如用户设置、应用状态等。SharedPreferences采用键值对的形式...
Android本地存储SharedPreferences详解 存储位置 SharedPreferences数据保存在: /data /data/<package> /shared_prefs 文件夹下,以XML格式保存,根元素为:。文件名称为获取SharedPreferences实例时传递的參数值。...
**SharedPreferences详解** `SharedPreferences`是Android系统提供的一种轻量级的数据存储方式,它主要用于应用程序中简单数据的持久化存储,例如用户设置、应用状态等。`SharedPreferences`采用键值对的形式来保存...
**Android的SharedPreferences详解** SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于保存应用程序的简单配置信息,如用户设置、应用状态等。它是一种基于XML文件的持久化存储,通常用于...
`SharedPreferences`是Android系统提供的一种轻量级的数据存储机制,主要用于存储应用的配置信息或者简单的用户数据。本文将深入讲解`SharedPreferences`的工作原理,并通过实现“记住密码”的功能来具体演示其使用...
【Android中的SharedPreferences详解】 SharedPreferences是Android系统提供的一种轻量级的数据存储机制,它主要用于存储应用程序中的配置信息或者一些简单的用户数据,例如用户设置、登录凭证等。与Web程序中的...
SharedPreferences是Android中存储简单数据的一个工具类。可以想象它是一个小小的Cookie,它通过用键值对的方式把简单数据类型(boolean、int、float、long和String)存储在应用程序的私有目录下(data/data/包名/...
SharedPreferences详解 SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,...
二、SharedPreferences详解 1. 使用方式:SharedPreferences通过Context对象获取,如`getSharedPreferences(String name, int mode)`,其中name是SharedPreferences文件的名称,mode是访问模式,如MODE_PRIVATE...
**SharedPreferences详解** SharedPreferences是一个接口,用于在应用程序之间持久化简单的键值对数据。这些数据通常是基本类型,如字符串、整型、浮点型、布尔型等。SharedPreferences存储的数据是跨应用程序进程...
#### SharedPreferences详解 - **SharedPreferences是什么?** - `SharedPreferences`是一种轻量级的数据存储方式,主要用于存储简单的键值对数据。 - 在Android中,它通常用来保存用户的偏好设置、应用状态等...
**共享偏好SharedPreferences详解** 在Android应用开发中,我们经常需要保存一些轻量级的数据,比如用户的设置、状态等。这时,SharedPreferences就成为一个理想的解决方案。它提供了键值对存储功能,支持基本数据...
Android SharedPreferences详解 获取SharedPreferences的两种方式: 1 调用Context对象的getSharedPreferences()方法 2 调用Activity对象的getPreferences()方法 两种方式的区别: 调用Context对象的...
Android 跨进程SharedPreferences异常详解 Android 跨进程SharedPreferences异常详解是指在Android系统中,SharedPreferences在跨进程访问时出现的异常问题。SharedPreferences是Android系统提供的一种轻量级的存储...
以上就是关于`SharedPreferences`在Android中进行数据存储的详解,希望对你理解和使用这个工具有所帮助。如果想了解更多细节,可以参考给定的博客链接:[博客链接](https://hack-zhang.iteye.com/blog/1265370)。
2. **API详解** - **获取SharedPreferences实例**: - `getSharedPreferences(String name, int mode)`: 全局的SharedPreferences,根据指定名称和模式创建实例。 - `getPreferences(int mode)`: 当前Activity的...