密码切换显示和隐藏 并且保证切换时候EditText显示在最后一行

本文介绍了一种在Android应用中实现密码输入框可见性切换的方法。通过点击眼睛图标,可以实现在显示密码和平常隐藏密码之间的切换,并确保光标始终位于输入框的末尾。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mEye.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (isHidden){//当前状态不可见
                    //设置密码可见
                    pwd.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
                    mEye.setBackgroundResource(R.mipmap.eye_opening);
                }else {//当前状态可见
                    //设置密码不可见
                    pwd.setTransformationMethod(PasswordTransformationMethod.getInstance());
                    mEye.setBackgroundResource(R.mipmap.eye_closed);
                }
                isHidden=!isHidden;

               //切换后将EditText光标置于末尾   
                CharSequence charSequence = pwd.getText();
                if (charSequence instanceof Spannable) {
                    Spannable spanText = (Spannable) charSequence;
                    Selection.setSelection(spanText, charSequence.length());
                }
            }
        });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值