package com.example.android_shared_preference; import android.app.Activity; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.view.Menu; import android.widget.EditText; import android.widget.TextView; /** * @desc 持久化信息 * @author ljt * @time 2014年8月27日 下午10:57:33 */ public class MainActivity extends Activity { private TextView textView; private EditText editText; private SharedPreferences sp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView)findViewById(R.id.textView1); editText = (EditText)findViewById(R.id.editText1); // 获取共享属性操作工具 sp = getSharedPreferences("kk",0); } @Override protected void onPause() { super.onPause(); // 保存用户名 String username = editText.getText().toString(); System.out.println("==onPause:"+username); Editor edit = sp.edit(); edit.putString("username", username); edit.commit(); } @Override protected void onResume() { super.onResume(); // 读取用户名 String username = sp.getString("username",""); System.out.println("==onResume:"+username); editText.setText(username); Editor edit = sp.edit(); edit.clear(); edit.commit(); } }
SharedPreference是Android提供的一种轻量级的数据存储方式,主要用来存储一些简单的配置信息,例如,默认欢迎语,登录用户名和密码等。其以键值对的方式存储,使得我们能很方便进行读取和存入。
通过Activity自带的getSharedPreferences方法,可以得到SharedPreferences对象。
public abstract SharedPreferences getSharedPreferences (String name, int mode);
name:表示保存后 xml 文件的名称
mode:表示 xml 文档的操作权限模式(私有,可读,可写),使用0或者MODE_PRIVATE作为默认的操作权限模式。