使用
Shared Preferences (Using Shared Preferences)
SharedPreferences 类提供了一个通用的框架来允许你以"键-值对"的形式来储存和获取
持久的基础数据。你可以使用
SharedPreferences 来保存任何基础数据:boolean, float, int,
long 和 String。这些数据将存留横跨用户对话(即使你的应用程序被杀死了)。
User Preferences
Shared preferences are not strictly for saving "user preferences," such as what ringtone a user
has chosen. If you're interested in creating user preferences for your application, see
PreferenceActivity
, which provides an Activity framework for you to create user preferences, which will be
automatically persisted (using shared preferences).
要给你的应用获取一个
SharedPreference 对象,使用以下的两个函数之一:
getSharedPreferences() - 如果你需要多个通过名字来识别的偏好文件请使用该函数,名
字通过第一个参数来设定。
getPreferences() - 如果你的 Activity 仅需要一个偏好文件请使用该函数。因为这会是你
的
Activity 独有的偏好文件,你不用提供一个文件名。
写入数值:
1.调用 edit() 函数来获得一个 SharedPreferences.Editor 对象。
2.通过 putBoolean() 、putString() 等函数来添加数值。
3.通过 commit() 函数来提交和确认操作。
要读取数值,使用
SharedPreferences 中的 getBoolean() 、getString() 等函数。
这里是一个例子,为一个计算器的按键静音模式保存了一个偏好:
Java 代码
public class Calc extends Activity {
public static final String PREFS_NAME = "MyPrefsFile";
@Override protected void onCreate(Bundle state) {
super.onCreate(state); . . .
// Restore preferences SharedPreferences settings =
getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean("silentMode", false); setSilent(silent);
}
@Override protected void onStop() {