转载请标明是引用于 http://blog.csdn.net/chenyujing1234
例子代码:
http://www.rayfile.com/zh-cn/files/f5ea204a-84b1-11e1-94df-0015c55db73d/
SharedPreferences是Android提供用来存储一些简单的配置信息的一种机制。
在OnCreate中使用getSharedPreferences取得SharedPreferences对象settings,然后用getString取得其中保存的值。
public class DBSharedPreferences extends Activity {
public static final String SETTING_INFOS = "SETING_Infos";
public static final String NAME = "NAME";
public static final String PASSWORD = "PASSWORD";
// 接收用户名的组件
private EditText field_name;
// 接收密码的组件
private EditText field_pass;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Find View
field_name = (EditText)findViewById(R.id.name);
field_pass = (EditText)findViewById(R.id.password);
// 获取一个SharedPreferences对象
SharedPreferences settings = getSharedPreferences(SETTING_INFOS, 0);
// 取出保存的name值
String name = settings.getString(NAME, "");
String password = settings.getString(PASSWORD, "");
// 将取出来的用户名赋予field_name
field_name.setText(name);
field_pass.setText(password);
}
而在程序运行OnStop()时
// 在程序退出时,会首先使用getSharedPreferences得到settings
@Override
protected void onStop(){
super.onStop();
SharedPreferences settings = getSharedPreferences(SETTING_INFOS, 0);
// 使其处于编辑状态,并用putString将两个EditText中的值保存起来。最后用commit提交
settings.edit()
.putString(NAME, field_name.getText().toString())
.putString(PASSWORD, field_pass.getText().toString())
.commit();
}
SharedPreferences是以XML文件方式自动保存的,在DDMS中的File Explorer中展开到/data/data/<package name>/shared_prefs下,
可以看到一个叫做SETTING_Info.xml的文件。
通过右上角的导出按钮,可以将其导出到设备中。打开后内容是:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="PASSWORD">广告天天</string>
<string name="NAME">共和国的风格的风格你</string>
</map>