android – 使用TextInputLayouts passwordToggleEnabled的可见密码

android – 使用TextInputLayouts passwordToggleEnabled的可见密码,第1张

概述我正在使用TextInputLayout和支持库中的新函数:passwordToggleEnabled.这给了一个很好的“眼睛” – 图标,让用户可以打开和关闭密码可见性. 我的问题是,是否有办法使用此功能,但开始密码可见? 我的xml: <android.support.design.widget.TextInputLayout android:id="@ 我正在使用TextinputLayout和支持库中的新函数:passwordToggleEnabled.这给了一个很好的“眼睛” – 图标,让用户可以打开和关闭密码可见性.

我的问题是,是否有办法使用此功能,但开始密码可见?

我的xml:

<androID.support.design.Widget.TextinputLayout                    androID:ID="@+ID/password"                    androID:layout_wIDth="match_parent"                    androID:layout_height="wrap_content"                    app:passwordToggleEnabled="true">                    <EditText                        androID:ID="@+ID/password_edit"                        androID:layout_wIDth="match_parent"                        androID:layout_height="wrap_content"                        androID:hint="@string/prompt_password"                        androID:inputType="textPassword" /></androID.support.design.Widget.TextinputLayout>

切换看起来与此类似:

我还没有找到一种方法在xml中执行此 *** 作,而不是在呈现视图后手动切换可见性的方法.如果我将EditText的输入类型设置为textVisiblePassword,则不会显示切换.如果我在代码中使用例如mPasswordEditText.settransformationMethod(null);显示密码但切换消失,用户无法再次隐藏密码.我知道我可以手动完成所有 *** 作,但只是想知道我是否可以使用新的魔术切换工作

解决方法 其中一种方法是,我们可以从TextinputLayout中搜索CheckableImagebutton,然后根据EditText的密码可见性状态以编程方式对其执行onClick.

这是代码片段.

private CheckableImagebutton findCheckableImagebutton(VIEw vIEw) {    if (vIEw instanceof CheckableImagebutton) {        return (CheckableImagebutton)vIEw;    }    if (vIEw instanceof VIEwGroup) {        VIEwGroup vIEwGroup = (VIEwGroup) vIEw;        for (int i = 0,ei = vIEwGroup.getChildCount(); i < ei; i++) {            CheckableImagebutton checkableImagebutton = findCheckableImagebutton(vIEwGroup.getChildAt(i));            if (checkableImagebutton != null) {                return checkableImagebutton;            }        }    }    return null;}//...if (passwordEditText.gettransformationMethod() != null) {    CheckableImagebutton checkableImagebutton = findCheckableImagebutton(passwordTextinputLayout);    if (checkableImagebutton != null) {        // Make password visible.        checkableImagebutton.performClick();    }}
总结

以上是内存溢出为你收集整理的android – 使用TextInputLayouts passwordToggleEnabled的可见密码全部内容,希望文章能够帮你解决android – 使用TextInputLayouts passwordToggleEnabled的可见密码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1138187.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存