前言

  本章内容是android.content.SharedPreferences,版本为Android 2.3 r1,翻译来自"madgoat",欢迎大家访问他的博客:http://madgoat.cn/,再次感谢"madgoat" !期待你加入Android 中文翻译组,联系我over140@gmail.com。

声明

  欢迎转载,但请保留文章原始出处:)

    博客园:http://www.cnblogs.com/

    Android中文翻译组:http://goo.gl/6vJQl

正文

  一、结构

public interface SharedPreferences

android.content.SharedPreferences

  二、概述

  用于访问和修改getSharedPreferences(String, int)返回偏好设置数据(preference data)的一个接口。对于任何一组特殊的preferences,所有的客户端共享一个此类单独的实例。

修改Preferences必须通过一个SharedPreferences.Editor对象,以确保当他们提交存储数据的操作时,preference值保持一致的状态。

  注意:当前此类不支持多线程访问。后续将添加。

  (译者注:这里译为” 偏好设定”,类似于ini文件,用于保存应用程序的属性设置)

  参见

   getSharedPreferences(String, int)

  三、内部类

interface  SharedPreferences.Editor

  用于修改SharedPreferences对象设定值的接口。

  interface  SharedPreferences.OnSharedPreferenceChangeListener

  接口定义一个用于在偏好设定(shared preference)改变时调用的回调函数。

  四、公共方法

public abstract boolean contains (String key)

判断preferences是否包含一个preference。

参数

key 想要判断的preference的名称

返回值

如果preferences中存在preference,则返回true,否则返回false。

public abstract SharedPreferences.Editor edit ()

针对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 int getInt (String key, int defValue)

从preferences中获取一个int类型的值。

参数

key            获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个int类型,则抛出ClassCastException。

异常

ClassCastException

public abstract long getLong (String key, long defValue)

从preferences中获取一个long类型的值。

参数

key            获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个long类型,则抛出ClassCastException。

异常

ClassCastException

public abstract String getString (String key, String defValue)

从preferences中获取一个String类型的值。

参数

key            获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个String类型,则抛出ClassCastException。

异常

ClassCastException

public abstract void registerOnSharedPreferenceChangeListener (SharedPreferences.OnSharedPreferenceChangeListener listener)

注册一个回调函数,当一个preference发生变化时调用。

参数

listener    将会被调用的回调函数

参见

unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)

public abstract void unregisterOnSharedPreferenceChangeListener (SharedPreferences.OnSharedPreferenceChangeListener listener)

注销一个之前(注册)的回调函数

参数

listener    要被注销的回调函数

参见

registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)

  五、补充

  文章精选

SharedPreferences

[Android开发者指南] 第十八讲:Android SharedPreferences和File

SharedPreferences用法

Android程式設計 (十五) 使用SharedPreferences

示例代码

      译注:Shared Preferences保存位置:/data/data/app_name/shared_prefs/*.xml

private boolean flag = false;

//取得活动的Preferences对象
SharedPreferences settings = getPreferences(Activity.MODE_PRIVATE);
//取得值
flag = settings.getBoolean(“flag”,false);

//取得活动的Preferences对象
SharedPreferences settings = getPreferences(0);
//取得编辑对象
SharedPreferences.Editor editor = settings.edit();
//添加值
editor.putBoolean(“true”,flag);
//提交保存
editor.commit();

转载:http://www.cnblogs.com/over140/archive/2011/01/13/1934301.html

Android 中文api (88)——SharedPreferences相关推荐

  1. Android ----中文Api 百度地图

    Android中文API最新中文版 [复制链接]     kupe kupe当前离线 在线时间 1 小时 e望 0 点 最后登录 2011-2-17 注册时间 2011-2-17 积分 12 阅读权限 ...

  2. Android 中文API (94) —— MediaController

    前言 本章内容是android.widget.MediaController,版本为Android 2.3 r1,翻译来自"唐明",再次感谢"唐明" !期待你一 ...

  3. Android 中文 API 文档 (45) —— AbsoluteLayout.LayoutParams

    前言 本章内容是 android.widget.AbsoluteLayout.LayoutParams,版本为Android 2.2 r1,翻译来自"绵白糖",再次感谢" ...

  4. Android 中文API (92) —— MenuInflater

    前言 本章内容是android.view.MenuInflater,版本为Android 2.3 r1,翻译来自"獨鍆躌踄",欢迎大家访问他的博客:http://www.cnblo ...

  5. Android 中文 API (90) —— WindowManager

    一.结构 public interface WindowManager extends android.view.ViewManager android.view.WindowManager 二.概述 ...

  6. Android 中文API (70) —— BluetoothDevice[蓝牙]

    前言 本章内容是 android.bluetooth.BluetoothDevice,为Android蓝牙部分的章节翻译.蓝牙设备类,代表了蓝牙通讯国足中的远端设备.版本为 Android 2.3 r ...

  7. Android中文API(127) —— MessageQueue

    结构 继承关系 public class MessageQueue extends Object java.lang.Object android.os.MessageQueue 类概述 保存消息列表 ...

  8. android 中文 API (41) —— RatingBar.OnRatingBarChangeListener

    前言 本章内容是 android.widget.RatingBar.OnRatingBarChangeListener,版本为Android 2.2 r1,翻译来自madgoat,欢迎大家访问他的博客 ...

  9. Android 中文API (91) —— GestureDetector

    前言 本章内容是android.view.GestureDetector,版本为Android 2.3 r1,翻译来自"Haiya 胡蝶",再次感谢"Haiya 胡蝶&q ...

最新文章

  1. Windows全能终端神器MobaXterm
  2. Devexpress XtraGrid 控件编辑的内容,如何实时生效
  3. MIT新研究:43%算法改进速度超摩尔定律,解决超大规模问题,算法比硬件更有用...
  4. 深度学习核心技术精讲100篇(五十一)-Spark平台下基于LDA的k-means算法实现
  5. Spring JdbcTemplate配置
  6. ASP.NET Core 使用UrlFirewall对请求进行过滤
  7. LeetCode 1366. 通过投票对团队排名(自定义排序)
  8. 优秀案例快速提升UI设计界面的视觉效果、用户体验
  9. 二.hadoop环境搭建
  10. Presto?还是 Hive? 你们知道大数据查询性能谁更强吗?
  11. 数据预处理第5讲:特征缩放
  12. Python字符串、元组、列表、字典互相转换的方法
  13. MySQL 有哪些锁?
  14. 做一个模仿Windows画板喷漆笔刷效果
  15. 使用Windows批处理+ImageMagick 实现批量处理图片
  16. 小程序上线后部分图片不显示的问题
  17. html响应式布局ipad,响应式布局(Responsive design)
  18. 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组
  19. Excel分类汇总2个维度的结果,1个计数1个求和
  20. 辛瓜地计算机体育英语,体育英语|射箭(Archery)

热门文章

  1. feign post 传递空值_HTTP中GET与POST的区别,99 %的人都理解错了
  2. java地铁线路规划_地铁线路规划——简单分析
  3. 2021人工神经网络第二次作业要求
  4. 第十六届全国大学生智能汽车竞赛--百度智慧交通(东部赛区)
  5. 基于ESP32的竞赛裁判系统功能调试-计时线圈功能
  6. ACS712模块 ACS712ELCTR-05A电流传感器模块
  7. 2021年春季学期-信号与系统-第五次作业参考答案-第十一移小题—MATLAB
  8. 无线充电系统的功率与效率
  9. 天体摇摆仪的工作原理
  10. 20分钟学会mysql_5分钟学会mysql基本操作