android收藏功能范例,Android:SharedPreferences详解+示例

一、简介SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。

二、存储位置

在/data/data//shared_prefs目录下。

三、操作数据

SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。

具体操作过程:

1、根据Context获取SharedPreferences对象

2、利用edit()方法获取Editor对象。

3、通过Editor对象存储key-value键值对数据。

4、通过commit()方法提交数据。

四、实例代码

public class SharePreActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

//获取SharedPreferences对象

Context ct = SharePActivity.this;

SharedPreferences sp = ct.getSharedPreferences("MY_PRE", MODE_PRIVATE);

//存入数据

Editor editor = sp.edit();

editor.putString("STR_KEY", "string");

editor.putInt("INT_KEY", 1);

editor.putBoolean("BOO_KEY", true);

editor.commit();

//返回STRING_KEY的值,定义key值错误或者此key无对应value值的话返回""

Log.d("look_sharePre", sp.getString("STR_KEY", ""));

//如果OTHER_KEY不存在,定义key值错误或者此key无对应value值的返回值为"other"

Log.d("look_sharePre", sp.getString("OTHER_KEY", "other"));

}

}

注:在私有目录下生成一个MY_PRE.xml文件,里面采用键值对的形式存储数据。

string

五、方法详解

1、getSharedPreferences(String name, int mode)的两个参数的:

参数1:name,

存储时的名称,比如这里的"MY_PRE";

参数2:mode,打开方式,一般都用Activity.MODE_PRIVATE、MODE_PRIVATE

2、registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListenerlistener):

注册一个当preference发生改变时被调用的回调函数

3、unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener):删除当前回调函数

4、SharedPreferences.Editor接口

用于修改SharedPreferences对象的内容,所有更改都是在编辑器所做的批处理,而不是复制回原来的SharedPreferences或持久化存储,直到你调用commit(),才会永久存储。

方法说明:

clear():清除内容。

commit():提交修改

remove(String key):删除preference

六、扩展功能

1、音效设置

保存应用程序当前是否 播放音效的状态。当前音效状态处于关闭时,按“+”键来开启音效,然后点击返回按钮退出程序 ,再次启动应用程序,现在的音效状态就处于开的状态。保存操作是放在 back按钮的监听事件里边完成的。 在这个程序中我们在退出时把音效状态保存到 Preferences 中,因此在启动时就读取出上次保存的数据。上次保存的是什么状态 ,在打开的时候就是什么状态。

2、记住密码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值