ITPub博客

首页 > IT职业 > IT生活 > Android登录页面密码明文密文的切换

Android登录页面密码明文密文的切换

IT生活 作者:oswald 时间:2021-09-09 10:47:04 0 删除 编辑

好多APP登录页面为了查看自己输入密码是否正确都添加了明文查看的方法,也就是所谓的小眼睛,把小眼睛的代码分享给大家.
Activity:

//声明id:
    private EditText etUserName;
    private ImageView iv_eye;
//查找id
etPassword = findViewById(R.id.et_password);
iv_eye = findViewById(R.id.iv_eye);
//给小眼睛设置点击事件并调用切换明文密文方法
    iv_eye.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                showPwd(etPassword,iv_eye);
            }
        });

 protected boolean isHidden =true;
    protected void showPwd(EditText etPassword, ImageView iv_eye){
        if(isHidden){
            //editText可见
            etPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
            /**图标改变*/
            iv_eye.setImageResource(R.drawable.ic_open_eye);
        } else {
            //editText不可见
            etPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
            /**图标改变*/
            iv_eye.setImageResource(R.drawable.ic_close_eye);
        }
        isHidden =!isHidden;
        etPassword.postInvalidate();
        //切换后将EditText光标置于末尾
        CharSequence charSequence = etPassword.getText();
        if (charSequence instanceof Spannable) {
            Spannable spanText = (Spannable) charSequence;
            Selection.setSelection(spanText, charSequence.length());
        }
    }

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2231/viewspace-2826106/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: v-show、v-if
请登录后发表评论 登录
全部评论

注册时间:2019-04-16

  • 博文量
    137
  • 访问量
    1302