您的位置:首页 > 移动开发 > Android开发

android基础——数据存储之SharedPreferences

2016-09-24 17:43 375 查看
/**
*
* @author 刘中林
*
*/
public class MainActivity extends Activity {

private EditText inputUsername, inputPassword;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

initView();

}

private void initView() {
// TODO Auto-generated method stub
inputUsername = (EditText) findViewById(R.id.inputUsername);
inputPassword = (EditText) findViewById(R.id.inputPassword);
}

public void btnSp(View view) {
switch (view.getId()) {
case R.id.register://进行注册
//			1,获取用户名和密码
String username = inputUsername.getText().toString().trim();
String password = inputPassword.getText().toString().trim();

//			2,存起来,存到sharedPreferences
//			参数二,文件的访问模式,SharePreferences的模式,其他的应用程序不允许访问
//			SharedPreferences保存私有的数据
//			访问模式:
//			2.MODE_APPEND继续sp文件中进行添加
//			3.MODE_MULTI_PROCESS多进程可以共同访问SharedPreferences
//			4.MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE::已经被废弃了
//			1.MODE_PRIVATE 最常用的模式,私有的模式,其他应用不允许访问
SharedPreferences sp = getSharedPreferences("userInfo", MODE_PRIVATE);
//			3.获取编辑器
Editor editor = sp.edit();
if(!TextUtils.isEmpty(username)&&!TextUtils.isEmpty(password)){//用户输内容了

editor.putString("username", username);
editor.putString("password", password);
//			4,进行保存,提交
//				sharePreferences数据xml保存的数据
//				键值对
//				只能保存少量数据
editor.commit();
Toast.makeText(this, username+"注册成功!", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "请输入用户名和密码:", Toast.LENGTH_SHORT).show();
}

break;
case R.id.login:
//			1.获取spGet
SharedPreferences spGet = getSharedPreferences("userInfo", MODE_PRIVATE);
//			2.获取数据,根据key
//			sp会随着应用程序的卸载一起删除
String name = spGet.getString("username", null);//如果没有数据,默认返回的数据
String pw = spGet.getString("password", null);
Toast.makeText(this, "获取的数据是,用户名:"+name+"密码是:"+pw, Toast.LENGTH_SHORT).show();

if("abc".equals(name)&&"123456".equals(pw)){
startActivity(new Intent(this, LoginActivity.class));
}else{
Toast.makeText(this, "用户名和密码不存在", Toast.LENGTH_SHORT).show();
}

break;
default:
break;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android