效果图
知识点:
- getSharedPreferences 获取SharedPreferences对象
- 由SharedPreferences获取Editor,Editor类似一个map
- Editor.put写入数据,最后要加上Editor.commit
- Editor.remove(key)移除数据,SharedPreferences.getString(key)获取数据
源码:
public class MainActivity extends Activity {
private EditText editName;
private EditText editPassword;
private CheckBox checkRemember;
private Button btnLogin;
private SharedPreferences pref;
private String userName;
private String userPassword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editName = (EditText) findViewById(R.id.editName);
editPassword = (EditText) findViewById(R.id.editPassword);
checkRemember = (CheckBox) findViewById(R.id.checkRemember);
btnLogin = (Button) findViewById(R.id.btnLogin);
pref = getSharedPreferences("user", MODE_PRIVATE);
userName = pref.getString("name", "");
if(userName!=null){
editName.setText(userName);
}
btnLogin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
userName = editName.getText().toString();
userPassword = editPassword.getText().toString();
if(userName==null||userPassword==null||userName.equals("")||userPassword.equals("")){
Toast.makeText(MainActivity.this, "用户名或密码为空!",Toast.LENGTH_SHORT).show();
}else{
if(userName.equals("xiaoming")&&userPassword.equals("123456")){
Toast.makeText(MainActivity.this, "登录成功!",Toast.LENGTH_SHORT).show();
Editor editor = pref.edit();
if(checkRemember.isChecked()){
editor.putString("name", userName);
editor.commit();
}else{
editor.remove("name");
editor.commit();
}
}else{
Toast.makeText(MainActivity.this, "用户名或密码错误",Toast.LENGTH_SHORT).show();
}
}
}
});
}
}