Andorid存储方式----SharedPreferences存储

SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。

保存路径为:data文件夹下对应的包文件下下,类型为xml文件。

SharedPreferences存储比较简单,步骤如下:

  (1)获取SharedPreferences对象

  (2)利用edit()方法获取Editor对象。

  (3)通过Editor对象存储key-value键值对数据。

  (4)通过commit()方法提交数据。

例子:

public class MainActivity extends Activity {
    private EditText nameET;
	private EditText phoneET;
	private EditText emailET;
	private SharedPreferences sp;

	public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        nameET = (EditText) findViewById(R.id.nameET);
        phoneET = (EditText) findViewById(R.id.phoneET);
        emailET = (EditText) findViewById(R.id.emailET);
        
        //创建一个data.xml 模式为私有,data.xml在rom目录data/data/com.itcast.sp/.../data.xml下
        sp = getSharedPreferences("data", MODE_PRIVATE);	
        
        nameET.setText(sp.getString("name", ""));			// 获取数据, 若没有name值,则指定默认值""
        phoneET.setText(sp.getString("phone", ""));
        emailET.setText(sp.getString("email", ""));
    }
    //相应按钮,保存到xml文件中
    public void onClick(View view) {
    	String name = nameET.getText().toString();
    	String phone = phoneET.getText().toString();
    	String email = emailET.getText().toString();
    	
    	Editor editor = sp.edit();					// 获取编辑器
    	editor.putString("name", name);					// 存储数据(还没进入文件)
    	editor.putString("phone", phone);
    	editor.putString("email", email);
		editor.commit(); 					// 提交修改(类似事务)
	}
}


效果如图:



程序关闭之后下次重新启动还是会显示这些数据,比如说编辑短信的时候突然来了个电话,打完电话返回短信界面我们需要继续编辑之前的内容,需要用到此方法。


posted @ 2013-11-14 21:20  会做菜的老狼  阅读(224)  评论(0编辑  收藏  举报