Using Shared Preferences

本文详细介绍了SharedPreferences在Android应用中如何存储和读取基本类型的键值对数据,包括布尔值、浮点数、整数、长整数及字符串等。通过示例展示了如何在计算器应用中保存静音按键模式的偏好设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

SharedPreferences 类类似windows下的ini文件,用于存储一些配置信息。

The SharedPreferences class provides a general framework that allows you to save and retrieve persistent key-value pairs of primitive data types. You can use SharedPreferences to save any primitive data: booleans, floats, ints, longs, and strings. This data will persist across user sessions (even if your application is killed).

To get a SharedPreferences object for your application, use one of two methods:

  • getSharedPreferences() - Use this if you need multiple preferences files identified by name, which you specify with the first parameter.
  • getPreferences() - Use this if you need only one preferences file for your Activity. Because this will be the only preferences file for your Activity, you don't supply a name.

To write values:

  1. Call edit() to get a SharedPreferences.Editor .
  2. Add values with methods such as putBoolean() and putString() .
  3. Commit the new values with commit()

To read values, use SharedPreferences methods such as getBoolean() and getString() .

Here is an example that saves a preference for silent keypress mode in a calculator:

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,
MODE_PRIVATE );//提供文件名,可设置读写权限        // getPreferences(MODE_PRIVATE);   //不提供文件参数,默认为工程名。在工程的私有文件夹的share_prefs可找到相应的文件 boolean silent = settings.getBoolean("silentMode", false); setSilent(silent); }

@Override protected void onStop(){ super.onStop(); // We need an Editor object to make preference changes. // All objects are from android.context.Context SharedPreferences settings = getSharedPreferences(PREFS_NAME,
MODE_PRIVATE ); SharedPreferences.Editor editor = settings.edit(); editor.putBoolean("silentMode", mSilentMode); // Commit the edits! editor.commit(); }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值