之前在学习SharedPreferences的时候,自己写的小例子。向SharedPreferences存储数据是使用的是SharedPreferences.editor对象的putXXX()方法,而读取SharedPreferences中的数据是使用的SharedPreferences对象的getXXX()方法来获取的。
主要实现的功能是有两个按钮,一个按钮是存储数据到SharedPreferences,另一个按钮是去从SharedPreferences中读取数据。SharedPreferences中存储的数据是按照键值对的形式存放的,因此取数据的时候根据键值获取到数据的值。布局文件很简单,就是两个Button和一个TextView,两个Button分别实现存储和读取,TextView用来显示数据。因此布局文件就不给出了。
/**
* 得到了SharedPreferences对象之后,需要三个步骤就可以开始向SharedPreferences文件操作
* 1、调用SharedPreferences对象的edit方法来获取一个SharedPreferences.Editor对象
* 2、向SharedPreferences.Editor对象中添加数据,使用putXXX方法
* 3、调用SharedPreferences.Editor对象的commit方法将添加的数据提交,从而完成数据存储操作
* */
package com.testsharedpreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.app.Activity;
import android.content.SharedPreferences;
public class MainActivity extends Activity {
Button buttonSave;
Button buttonRestore;
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttonSave = (Button) findViewById(R.id.buttonSave);
buttonRestore = (Button) findViewById(R.id.buttonRestore);
textView = (TextView) findViewById(R.id.textView);
buttonSave.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SharedPreferences.Editor editor = getSharedPreferences("data", MODE_PRIVATE).edit();
editor.putString("name", "zhangsan");
editor.putInt("age", 22);
editor.putBoolean("isMan", false);
editor.commit();
}
});
buttonRestore.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SharedPreferences preferences = getSharedPreferences("data", MODE_PRIVATE);
String data = "";
data += "name:" + preferences.getString("name", "") + "\n";
data += "age:" + preferences.getInt("age", 0) + "\n";
data += "isMan:" + preferences.getBoolean("isMan", false) + "\n";
textView.setText(data);
}
});
}
}