EditText 限制只能输入字母和数字,并且字母自动大写
原创文章,如有转载,请注明出处:http://blog.csdn.net/myth13141314/article/details/78124068
限制EditText的输入类型需要设置digits属性
<EditText
android:id="@+id/tv_code"
style="@style/edt_text"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="4dp"
android:layout_weight="1"
android:hint="请输入"
android:maxLength="17"
android:digits="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
以上设置以后就只能输入数字和大小写的字母了
要将输入的小写字母自动转化为大写字母并显示在EditText上,比较简便的方法是设置EditText的setTransformationMethod
//首先是小写转大写的方法
public class UpperCaseTransform extends ReplacementTransformationMethod {
@Override
protected char[] getOriginal() {
char[] aa = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
return aa;
}
@Override
protected char[] getReplacement() {
char[] cc = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
return cc;
}
}
//然后是设置
editText.setTransformationMethod(new UpperCaseTransform());
通过以上设置以后,用户键盘输入小写字母,EditText会转化成大写显示
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: C++中ofstream和ifstream详细用法
- 下一篇: JNA调用dll文件时注意事项