有些应用需要保存配置信息,如是否保存上次输入的用户名、密码等Android针对这类应用提供了SharedPreferences,适用于数据量少、数据以键值对保存的应用。保存数据步骤:
1、实例化共享首选项对象
SharedPreferences sp=getSharedPreferences("tarena",MODE_WORLD_PRIVATE);
2、创建编辑对象
Editor editor=sp.edit();
3、添加数据
editor.put***();
4、保存数据
editor.commit();
b、读取数据步骤:
1、实例化共享首选项对象
SharedPreferences sp=getSharedPreferences("tarena",MODE_WORLD_PRIVATE);
2、读取数据
Object value=sp.get***();
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.main);
share=this.getSharedPreferences(Constant.PERFERENCE_NAME, Context.MODE_PRIVATE);
super.onCreate(savedInstanceState);
}
@Override
public void initView(Bundle savedInstanceState) {
bt_login=(Button) this.findViewById(R.id.bt_login);
et_username=(EditText) this.findViewById(R.id.et_username);
et_password=(EditText) this.findViewById(R.id.et_pasword);
cb_save=(CheckBox) this.findViewById(R.id.cb_save);
}
@Override
public void initData() {
boolean isSave=share.getBoolean("isSave", false);
if(isSave){
String userName=share.getString("userName", "");
String passWord=share.getString("passWord", "");
et_username.setText(userName);
et_password.setText(passWord);
cb_save.setChecked(true);
}
}
@Override
public void initListener() {
bt_login.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String userName=et_username.getText().toString().trim();
String passWord=et_password.getText().toString().trim();
if(TextUtils.isEmpty(userName)||TextUtils.isEmpty(passWord)){
Toast.makeText(MainActivity.this, "用户名和密码不能为空!", 0).show();
}
if(cb_save.isChecked()){
Editor edit=share.edit();
edit.putString("userName",userName);
edit.putString("passWord",passWord);
edit.putBoolean("isSave", true);
edit.commit();
Toast.makeText(MainActivity.this, "保存成功,正在登陆.......!", 0).show();
}else{
share.edit().clear().commit();
Toast.makeText(MainActivity.this, "直接登陆......!", 0).show();
}
}
});
}