sharedPreferences的使用方式:edit(), getSharedPreferences(),getPreferences()
时间: 2024-11-30 09:19:40 浏览: 12
`SharedPreferences`是Android系统提供的一个轻量级持久化存储数据的方式,它适用于存储小量非敏感的数据。`getSharedPreferences()`和`getPreferences()`方法是获取`SharedPreferences`实例的两种方式:
1. `getSharedPreferences(String name, int mode)`:
这是主要的获取方式,接收两个参数:
- `name`: 是用于标识SharedPreferences的唯一名称,通常是应用的包名加一个自定义字符串,便于区分不同的偏好设置。
- `mode`: 可选参数,有三种模式:
- `MODE_PRIVATE` (默认): 数据不会被外部应用访问,仅应用内部可以读写。
- `MODE_WORLD_READABLE`: 其他应用可以读取,但不能写入数据。
- `MODE_WORLD_WRITEABLE`: 其他应用可以读写数据。
2. `getPreferences(int mode)`:
等同于`getSharedPreferences(context.getPackageName(), mode)`,是在给定Context(通常是Activity或Application实例)的基础上获取。此方法更简洁,但如果需要特定命名的SharedPreferences,就需要显式传递名字。
一旦得到`SharedPreferences`实例,就可以通过`.edit()`方法对其进行操作:
```java
SharedPreferences sharedPref = getSharedPreferences("MyPreferences", MODE_PRIVATE);
Editor editor = sharedPref.edit(); // 创建编辑器
// 添加键值对
editor.putString("key", "value");
// 更新已有键的值
editor.putInt("anotherKey", 42);
// 提交更改
editor.apply(); // 或者 commit()(推荐在主线程外使用)
```
在完成编辑后,可以通过`getString()`、`getInt()`等方法获取先前设置的值,或者`containsKey()`检查是否存在某个键。
阅读全文