首先介绍的是SharedPreferences,它是Android提供用来存储一些简单的配置信息的一种机制,例如,一些默认欢迎语、登录的用户名和密码等。其以键值对的方式存储,使得我们可以很方便的读取和存入,下面看一个演示的例子。
引用package us.imnet.iceskysl.db;
import Android.app.Activity;
import Android.content.SharedPreferences;
import Android.os.Bundle;
import Android.widget.EditText;
public class DBSharedPreferences extends Activity {
public static final String SETTING_INFOS = \"SETTING_Infos\";
public static final String NAME = \"NAME\";
public static final String PASSWORD = \"PASSWORD\";
private EditText field_name; //接收用户名的组件
private EditText filed_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); //首先获取用来输入用户名的组件
filed_pass = (EditText) findViewById(R.id.password); //同时也需要获取输入密码的组件
// Restore preferences
SharedPreferences settings = getSharedPreferences(SETTING_INFOS, 0); //获取一个SharedPreferences对象
String name = settings.getString(NAME, \"\"); //取出保存的NAME
String password = settings.getString(PASSWORD, \"\"); //取出保存的PASSWORD
//Set value
field_name.setText(name); //将取出来的用户名赋予field_name
filed_pass.setText(password); //将取出来的密码赋予filed_pass
}
@Override
protected void onStop(){
super.onStop();
SharedPreferences settings = getSharedPreferences(SETTING_INFOS, 0); //首先获取一个SharedPreferences对象
settings.edit()
.putString(NAME, field_name.getText().toString())
.putString(PASSWORD, filed_pass.getText().toString())
.commit();
} //将用户名和密码保存进去
}
通过上述代码可以看到http://www.myexception.cn/,Application.StartupPath在onCreate中使用 findViewById得到两个EditView后,使用getSharedPreferences取得SharedPreferences对象 settings,然后使用getString取得其中保存的值,最后使用setText将其值设置为两个EditText的值。
而在程序运行onStop过程,也就是在程序退出时,首先使用getSharedPreferences得到settings;然后调用edit()方法使其处于可以编辑状态,并使用putString 将两个EditText中的值保存起来;最后使用commit()方法提交即可保存。
引用SharedPreferences保存到哪里去了
SharedPreferences是以XML的格式以文件的方式自动保存的,在DDMS中的File Explorer中展开到/data/data/<package name>/shared_prefs下
转载于:https://www.cnblogs.com/guanxi/archive/2013/04/08/3007173.html