EditText我们在输入的时候常常会要求输入数字,字母,下划线。。这个时候我们一般用两种方法,
第一:正则表达式:
[\u4e00-\u9fa5] 中文
\n\s*\r 空白行,用于删除空白行
^\s*|\s*$ 首尾空白行
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* email 匹配
^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 字母开头,允许5-16字节,允许字母数字下划线
\d{3}-\d{8}|\d{4}-\d{7} 电话号码
-----就这些 百度上有很多,我现在写一些常用的,
第二:TextWatch类的设置,
我们在允许使用xml文件的时候,用的是String.xml文件中设置String,然后在布局中直接设置android:digits="@string/你定义的名字"
动态的话要用的就是一下:
EditText editText = new EditText(this) ;
String digits_ = ._@0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLIMNOPQRSTUVWXYZ";
editText.setKeyListener ( DigitsKeyListener.getInstance ( digits_ ) );
这样这个EditText中除了digits_ 设定的数值才可以输入