Android中记忆CheckBox复选框上一次的勾选状态

1.分析

1 首先,当用户 勾选/未勾选 复选框的时候,保存它的勾选状态(比如记住密码)cb.isChecked()
2 当程序下次运行的时候,要走MainActivity的onCreate()方法,因此在此方法中取出上次记忆的状态
3.1 取出的值如果为true,说明上次用户点击了记住密码。所以此时复选框状态应该设置为✅勾选状态,同时填充账户信息
3.2 取出的值如果为false,说明上次用户没有点击记住密码。没有记住密码就应该把当前复选框状态设置为×未选中状态

对应代码部分:
1.保存勾选状态/未勾选状态(✅)

if(cb.isChecked()){
           getSharedPreferences("checkInfo",0).edit().putBoolean("cbState",true).commit();
           // TODO: 2018/12/22 保存密码或者其他逻辑...
       }

2.在onCreate()中添加
if条件为true,上次状态✅,将复选框设置为✅
if条件未false,上次状态 ×(未勾选),复选框默认为 x(未勾选),不需要做什么处理

if(getSharedPreferences("checkInfo",0).getBoolean("cbState",false)){
            cb.setChecked(true);
            // TODO: 2018/12/22 填充保存的信息等...
        }
//CheckBox默认状态为false,如果上次没有选中复选框,全部默认就好

你可能感兴趣的:(Android学习笔记)