您的位置:首页 > 其它

EditText设置密码输入的小问题

2016-04-02 11:59 267 查看

EditText设置密码输入的一些问题

在用EditText设置密码输入时,如果没有注意的话可能会有一些小细节问题。

1、设置inputType。

通常我们直接在xml文件里设置inputType属性:

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"/>


2、在设置inputType属性后,添加输入限制

在设置inputType属性后,显示的就是密码输入框了,但是这个时候EditText是可以接收中文的,有些密码限定只能使用字母或者数字,这个时候有多种方法,可以调用addTextChangedListener(new TextWatcher())方法给EditText添加一个监听,也可以直接在xml里设置digits属性。

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:digits="01234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"/>


这样,EditText就只会接收digits里设定包含的特定字符。但是需要特别注意的是,如果在程序里调用了setInputType()方法的话,xml里设置的digits属性将不再生效。但是我们想要用到digits属性怎么办?这进可以在程序里调用setKeyListener(new DigitsKeyListener(“01234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”))来动态设置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  digits