简介
SharedPreferences是一种轻型的数据存储方式,通过键值对的形式保存数据,存储数据是以xml文件形式存储,文件存放在/data/data//shared_prefs目录下,一般用来存储一些简单的配置信息。
注:SharedPreferences可实现数据共享,但是无法直接在多个程序间共享,需要借助于Conttent Providers(内容分发者)
注:apply是将修改数据原子提交到内存,而后异步真正提交到硬件磁盘,而commit是同步的提交到硬件磁盘,因此,在多个并发的提交commit的时候,他们会等待正在处理的commit保存到磁盘后在操作,从而降低了效率。而apply只是原子的提交到内容,后面有调用apply的函数的将会直接覆盖前面的内存数据,这样从一定程度上提高了很多效率。
//移除数据
editor.remove(String key);
//清空数据
editor.clear();
//XML文件的形式储存
//设置本程序的私有访问
sharedPreferences=getSharedPreferences("userInfo",MODE_PRIVATE);
//获取程序中已保存的信息
rememeber.setChecked(sharedPreferences.getBoolean("rememeber",false));
mName.setText(sharedPreferences.getString("name",""));
mPassWord.setText(sharedPreferences.getString("password",""));
mLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name=mName.getText().toString();
String password=mPassWord.getText().toString();
Editor editor=sharedPreferences.edit();
if(name.equals("admin")&&password.equals("admin")){
//标记是否勾选记住密码
boolean flag=false;
if(rememeber.isChecked()){
flag=true;
editor.putString("name",name);
editor.putString("password",password);
editor.putBoolean("rememeber",true);
}
editor.putBoolean("rememeber",flag);
editor.commit();
startActivityForResult(new Intent(MainActivity.this,Main2Activity.class).putExtra("rememeber",flag),1);
}
}
});
下载地址: 等待上传~~