Android 使用SharedPreferences记住密码

使用SharedPreferences对象实现记住密码功能

具体的布局代码就省了,假定:

  1. 一个账号输入框,ID为:username
  2. 一个密码输入框,ID为:password
  3. 一个复选框,ID为:remember
  4. 一个登录按钮,ID为:login
// 先实例化所有控件
Button login = findViewById(R.id.login); // 登录按钮
EditText username = findViewById(R.id.username); // 账号输入框
EditText password = findViewById(R.id.password); // 密码输入框
CheckBox remember = findViewById(R.id.remember); // 记住密码复选框
// 创建SharedPreferences对象
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = pref.edit();
// 判断记录中是否勾选了记住密码
if (pref.getBoolean("remember", false)) {
    // 此时说明用户上次退出时勾选了记住密码
    // 为输入框和选择框设置默认值
    username.setText(pref.getString("username", "")); // 账号
    password.setText(pref.getString("password", "")); // 密码
    remember.setChecked(true); // 记住密码选择框
}
// 给按钮添加点击事件
login.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        // 先获取输入的账号和密码(验证省略,假定一直有值)
        String uname = username.getText().toString();
        String pwd = password.getText().toString();
        // 判断记住密码复选框的选中状态
        if (remember.isChecked()) {
            // 此时需要记住密码,将账号输入存入对象中
            editor.putBoolean("remember", true);
            editor.putString("username", uname);
            editor.putString("password", pwd);
        } else {
            // 此时用户取消了记住密码,清除记录
            editor.clear();
        }
        // 最后应用保存数据,此处有两个方法:commit、apply
        editor.apply();
        // editor.commit();
    }
});
因为只是实现基本的功能,所以代码量不是很多,写的也就比较简单,没有太多的封装,包括布局什么的也没有写,仅仅只是对具体功能的实现做了一个简单的整理和记录。如有疑问和建议欢迎在下方评论留言。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值