访问和修改 Preferences 数据的接口,通过 getSharedPreferences(String, int) 方法可以得到 SharedPreferences 对象。对于任何一组 Preferences ,都有一个单独的所有客户都可以访问的 SharedPreferences 对象。对 Preferences 的修改必须通过同一个 SharedPreferences.Editor 对象以保证 Preferences 的值能够在提交到存储区域时保持一致。通过各种 get 方法获取到的对象,必须被认为不可被应用程序修改的。
注意:当前该类不支持跨进程访问,以后会加入这个功能。
Summary
Nested Classes | |||
interface | 用于修改 SharedPreferences 对象中数据的接口。 | ||
interface | 当共享数据被修改时该接口中的回调方法被调用 |
Public Methods | |||||||||||
abstract boolean | 检查 preferences 是否包含一个 preference 参数 key 要检查的 preference 的名称 返回 如果存在这个 preference 就返回true,否则返回false。 | ||||||||||
abstract SharedPreferences.Editor | edit() 为 preferences 创建一个新的 Editor,通过它你可以对 preferences 中的数据进行修改并且原子地将修改后的数据提交到 SharedPreferences 中。 注意: 必须调用 commit() 将在 Editor 中修改的数据提交到 SharedPreferences 中。 返回 返回一个新的 SharedPreferences.Editor 接口的实例,允许你修改该 SharedPreferences 对象中的值。 | ||||||||||
getAll() 得到 preferences 中的所有值。 注意:你绝不能修改通过该方法返回的任何数据。否则将不能保证与你所存储数据的一致性。 返回 返回一个表示该 preferences 中键-值对的map集合。 抛出
| |||||||||||
abstract boolean | getBoolean(String key, boolean defValue) 返回 preferences 中的一个 布尔型数据。 参数 key 要得到的 preference 的名称 defValue 如果该preference 不存在则返回这个默认值 返回 如果存在则返回 preference 的值。如果该name对应的 preference 不是布尔型,则抛出ClassCastException 异常。 抛出 | ||||||||||
abstract float | getFloat(String key, float defValue) 参考上一个方法 | ||||||||||
abstract int | getInt(String key, int defValue) 参考上一个方法 | ||||||||||
abstract long | getLong(String key, long defValue) 参考上一个方法 | ||||||||||
abstract String | getString(String key, String defValue) 参考上一个方法 | ||||||||||
getStringSet(String key, Set<String> defValues) 参考上一个方法 | |||||||||||
abstract void | registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) 注册监听器。当 SharedPreferences 中的值发生改变的时候该监听器中的回调方法被调用 参数 listener 要注册的监听器 |
|
|
|
|
|
|
|
|
|
|
abstract void | unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) 解注册之前注册的监听器 参数 listener 要解注册的监听器 |