Hello,大家好,我是钟阳。
今天跟大家分享一篇安卓的学习笔记,就是登录时,记住密码的功能实现。 想必大家应该都知道记住密码功能吧。比如QQ,微信,这些常用软件。即第一次登录后就不需要再重复输入账号密码进行登录操作。那么是怎么实现的呢,就是通过SharedPreferences实现的。我们先看图吧。

在登录界面输入内容后,勾选记住密码复选框,然后再点击登录,登录成功后将软件关掉,再重新打开,就会看到,账号和密码就已经在输入框内了。

那么我就说一下是怎么实现的吧。。。 1. 首先你得先写一个这样的登录界面,并不难,只要会布局样式就能写出来,我这里就简单的加了一下drawable背景样式(不然太单调)

- 初始化复选框控件就不用说什么了是吧,然后呢就是通过this获取SharedPreferences对象。SharedPreferences里面的参数,第一个是文件名,第二个参数是操作对象
sp = this.getSharedPreferences("my_Password_1", Context.MODE_PRIVATE);
再Crtl+Alt+F声明sp
private SharedPreferences sp;
- 通过sp调用getBoolean方法设置账号和密码输入框的文本,这个判断语句呢就写在初始化方法里面吧
        if (sp.getBoolean("checkPassword", false)) {
            cLOr.setChecked(true);//设置复选框的状态为选中
            eLOa.setText(sp.getString("accountnum_key", null));
            eLOp.setText(sp.getString("password_key", null));
        }
4.在登录按钮的点击事件中,通过复选框组件对象调用**isChecked()**方法判断是否存储账号和密码。
	//记住密码
        boolean checked = cLOr.isChecked();
        if (checked) {
            //通过sp获得编辑器
            SharedPreferences.Editor edit = sp.edit();
            //通过编辑器获得账和密码
            edit.putString("accountnum_key", streLOa);
            edit.putString("password_key", streLOp);
            //设置复选框的状态
            edit.putBoolean("checkPassword", true);
            //提交事务
            edit.commit();
        } else {
            //获得编辑器
            SharedPreferences.Editor edit = sp.edit();
            //设置账号和密码
            edit.putString("accountnum_key",null);
            edit.putString("password_key",null);
            //设置状态
            edit.putBoolean("checkPassword",false);
            //提交事务
            edit.commit();
        }
如果账号和密码被记住了,可以通过DDMS打开data/data/项目包名/shared_prefs 进行查看,记住的账号和密码将会被保存在一个XML文件里,然后再把那个XML文件导出到桌面,右键点击编辑,就可以看到我们的账号和密码了。如图所示:


好啦,那么笔记就到这儿了。如果没看懂的同学可以通过我在哔哩哔哩分享的视频笔记观看详细步骤,下面附上链接
哔哩哔哩视频笔记 OK,感谢大家的阅读。
本人呢也是刚接触Android,欢迎各路大神提出指导性意见。谢谢啦!




















