shared preferences 是通过 Context 类的 getSharedPreferences 方法操作的。preferences 储存在文件中,而文件名用来指向 preferences。下面是怎样从 preferences 中读取数据。
public static final String PREF_FILE_NAME = “PrefFile”;
…
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
int storedPreference = preferences.getInt(”storedInt”, 0);
// use the values
MODE_PRIVATE 是 preferences 的操作模式。这是默认的模式,代表只有创建这个 preferences 的程序才能访问这个 preferences。其他两个模式是MODE_WORLD_READABL和 MODE_WORLD_WRITEABLE。
MODE_WORLD_READABLE 表示其他程序对这个SharedPreferences 只有只读权限。MODE_WORLD_WRITEABLE 则是其他程序同时拥有读写权限。
用 SharedPreference.Editor 往 preference 文件中保存数据。Editor 是 SharedPreference 的内部接口。
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt(”storedInt”, storedPreference); // value to store
editor.commit();
Editor 也支持 remove() 和 clear() 方法来删除数据。
Activity Preferences:
shared preferences 可以被其他程序的组件使用。但是如果你不需要和其他组件共享 preferences,而是希望一个在activities内私有的 preferences。可以用 activity 类的 getPreferences() 方法来实现。getPreference 方法用 activity 类的名字作为参数调用 getSharedPreference()。
下面是代码:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt(”storedInt”, 0);
下面的代码在 preferences 中保存数据。
SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt(”storedInt”, storedPreference); // value to store
editor.commit();
Shared Preferences:
最新推荐文章于 2025-04-17 14:41:46 发布