我是靠谱客的博主 文静钥匙,最近开发中收集的这篇文章主要介绍android:digits 代码设置,EditText中android:digits失效问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

需求:密码输入要求指定字符串,画面中可以切换密码显示与隐藏

原先代码如下:

xml:

android:id="@+id/set_password_txt"

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:paddingLeft="10dp"

android:hint="@string/sign_in_regist_set_pw"

android:textColor="@color/white"

android:textColorHint="@color/gray_white"

android:textCursorDrawable="@null"

android:inputType="textPassword"

android:digits="@string/register_pw_digits"

android:background="@null"/>

register_pw_digits在string中定义:~!@#$%^&*():";',./|[]{}?-=+_0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

JAVA中显示密码:

mPW.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);

隐藏密码:

mPW.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);

问题出现:当输入表情时居然可以输入!!!!android:digits失效!!

解决:

JAVA中不能使用setInputType改变密码显示及隐藏

而使用以下方法:

显示密码:

mPW.setTransformationMethod(HideReturnsTransformationMethod.getInstance());

隐藏密码:

mPW.setTransformationMethod(PasswordTransformationMethod.getInstance());

原因:估计是setInputType在底层实现时会覆盖android:digits的设置。具体求大神解析。

最后

以上就是文静钥匙为你收集整理的android:digits 代码设置,EditText中android:digits失效问题的全部内容,希望文章能够帮你解决android:digits 代码设置,EditText中android:digits失效问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部