SharedPreferences存储数据,会物理性的生成一个xml文件,把数据存在其中,基本用法
http://blog.csdn.net/zhaihaohao1/article/details/41941379中已经写过
今天实现一个登录后记住用户名密码的例子
界面:
核心代码:
public class LoginActivity extends Activity implements OnClickListener{
private EditText accountEdit;//用户名输入框
private EditText passwordEdit;//密码输入框
private Button login;//登录按钮
private CheckBox rememberpass;//多选框,(只有一个框)
private SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
accountEdit=(EditText) findViewById(R.id.account);
passwordEdit=(EditText) findViewById(R.id.password);
rememberpass=(CheckBox) findViewById(R.id.remember_pass);
/**
* 取出数据
*
*/
//生成SharedPreferences的对象
sharedPreferences=PreferenceManager.getDefaultSharedPreferences(this);
boolean isRemeber = sharedPreferences.getBoolean("remember_password", false);
if (isRemeber) {
//将账号和密码都设置到文本框中
String account = sharedPreferences.getString("account", "");
String password = sharedPreferences.getString("password", "");
accountEdit.setText(account);
passwordEdit.setText(password);
rememberpass.setChecked(true);//设置成选中状态
}
login=(Button) findViewById(R.id.login);
login.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String yonghuming = accountEdit.getText().toString().trim();
String mima = passwordEdit.getText().toString().trim();
if (yonghuming.equals("admin")&&mima.equals("123456")) {
Toast.makeText(LoginActivity.this, "用户名密码正确", 10).show();
/**
* 存入数据
*/
Editor editor=sharedPreferences.edit();
//判断多选框是否被选中,如果选中存入数据,"remember_password", true
if (rememberpass.isChecked()) {
editor.putBoolean("remember_password", true);
editor.putString("account", yonghuming);
editor.putString("password", mima);
}else {
editor.clear();
}
editor.commit();
}else {
Toast.makeText(LoginActivity.this, "信息错误", 10).show();
}
}
}//class
如果没有明白,下载我的例子
http://download.csdn.net/detail/zhaihaohao1/8311299