package com.example.sharepreferencesdemo;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
Button btWrite;
Button btRead;
Button btChange;
EditText etWrite;
EditText etShow;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btWrite = (Button)findViewById(R.id.button1);
btRead = (Button) findViewById(R.id.button2);
btChange = (Button) findViewById(R.id.button3);
etWrite = (EditText) findViewById(R.id.editText1);
etShow = (EditText) findViewById(R.id.editText2);
//得到默认的SharedPreferences对象
final SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(MainActivity.this);
final Editor editor = sp.edit();
btChange.setOnClickListener(new OnClickListener(){
public void onClick(View arg0) {
}
});
btWrite.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
// 获取编辑框输入的年龄
editor.putString("age", etWrite.getText().toString());
// 切记要执行这步才会提交
editor.commit();
}});
btRead.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
etShow.setText(sp.getString("age", "").toString());
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
SharePreferences是用xml方式存储的。
用的是key-value键值对的方式存储的。
举例:“name”是key,“张三”是value,就这么简单。
实现SharePreferences的步骤:
1、实例一个SharePreferences的对象。这个对象只能是获取到相当于是句柄了
2、获得SharePreferences.Editor对象。
3、通过Editor接口的putxxx方法保存。
例程: