SharedPreference是一种轻量型的数据存储方式,它的本质是基于XML文件存储Key-Value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/
shared_prefs目录下。 SharedPreference对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。
代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"</LinearLayout>
import android.os.Bundle;
import android.preference.Preference;
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;
import android.widget.Toast;
public class MainActivity extends Activity {
static final String KEY= "MyValue";
private EditText et;
private Button readbtn,writebtn;
SharedPreferences sharedPreferences;
Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et = (EditText) findViewById(R.id.editText1);
readbtn = (Button) findViewById(R.id.button1);
writebtn = (Button) findViewById(R.id.button2);
sharedPreferences = getPreferences(Activity.MODE_PRIVATE);
editor = sharedPreferences.edit();
readbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String in = sharedPreferences.getString(KEY, "当前数值不存在");
Toast.makeText(getApplicationContext(), in, Toast.LENGTH_SHORT).show();
}
});
writebtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
editor.putString(KEY, et.getText().toString());
if (editor.commit()) {
Toast.makeText(getApplicationContext(), "写入成功", Toast.LENGTH_SHORT).show();
}
}
});
}
}
此时,若写入数据,会弹出“写入成功”字样;之后可读取数据。
原文:http://blog.csdn.net/zhouboyu/article/details/44568817