Android代码设置EditText只输入数字、字母
来源:互联网 发布:java图形用户界面实例 编辑:程序博客网 时间:2024/05/23 01:01
一、设置EditText,只输入数字:
方法1:直接生成DigitsKeyListener对象就可以了。
et_1.setKeyListener(new
DigitsKeyListener(false,true));
方法2:在EditText中设置属性,android:numeric="integer"即只能输入整数,如下
android:singleLine="true"
android:numeric="integer"
/>
方法3:新建一个char[],在里面添加允许输入的字符。如下
editText.setKeyListener(new
NumberKeyListener(){
protected char[] getAcceptedChars()
{
char[]
numberChars[]={'1','2','3','4','5','6','7','8','9','0',};
return numberChars;
}
});
二、设置EditText只能输入某些字母,如下面设置edtitext只能输入A—N,a—n这些字母。方法如下:
editText.setKeyListener(new
NumberKeyListener(){
protected char[] getAcceptedChars()
{
char[]
numberChars[]={'a,'b','c','d','e','f','A','B','C','D'};
return numberChars;
}
});
EditText et;et = (EditText) findViewById(R.id.et);// 方法1:建立一个DigitsKeyListener,然后把它设为你的EditText的KeyListenerDigitsKeyListener numericOnlyListener = new
DigitsKeyListener(false,true);et.setKeyListener(numericOnlyListener);//
方法2:为EditText设置一个NumberKeyListener,然后重写getAcceptedChars()方法和getInputType()方法et.setKeyListener(new NumberKeyListener() {@Overrideprotected char[] getAcceptedChars() {return new char[] { '1', '2', '3', '4', '5', '6', '7', '8','9', '0'
};}@Overridepublic int getInputType() {// TODO Auto-generated method stubreturn android.text.InputType.TYPE_CLASS_PHONE;}});
--------------------------------------------------------------------------------------------
01.EditText et;02.et = (EditText) findViewById(R.id.et);03.// 方法1:建立一个DigitsKeyListener,然后把它设为你的EditText的KeyListener04.DigitsKeyListener numericOnlyListener = new
DigitsKeyListener(false,true);05.et.setKeyListener(numericOnlyListener);06.//
方法2:为EditText设置一个NumberKeyListener,然后重写getAcceptedChars()方法和getInputType()方法07.et.setKeyListener(new NumberKeyListener() {08. @Override09. protected char[] getAcceptedChars() {10. return new char[] { '1', '2', '3', '4', '5', '6', '7', '8','9',
'0' };11. }12. @Override13. public int getInputType() {14. // TODO Auto-generated method stub15. return android.text.InputType.TYPE_CLASS_PHONE;16. }17.});
小结:
第一种可以输入小数。
第二种由于设置了TYPE_CLASS_PHONE所以只能输入整数。且比较灵活。
============================================
很多网友可能在开发Android时发现EditText有时候需要限制用户输入的内容,通常我们可以使用正则表达式直接限制,但是Android
已经为我们准备好了EditText的输入类型,这样的比正则要有以下几点优势:
1. 开发更简单,执行速度高效。 2.
输入法默认会根据情况变动,比如说设置为numeric后输入法会自动仅显示数字,不会出现Qwerty中的字母。
下面我们通过EditText的layout
xml文件中的相关属性来实现:
1. 密码框属性 android:password="true"
这条可以让EditText显示的内容自动为 星号,输入时内容会在1秒内变成*字样。
2. 纯数字 android:numeric="true"
这条可以让输入法自动变为数字输入键盘,同时仅允许0-9的数字输入
3. 仅允许 android:capitalize="cwj1987"
这样仅允许接受输入cwj1987,一般用于密码验证
下面是一些扩展的风格属性
android:editable="false"
设置EditText不可编辑
android:singleLine="true"
强制输入的内容在单行
自动隐藏尾部溢出数据,一般用于文字内容过长一行无法全部显示时
- 代码设置EditText只输入数字、字母
- Android 代码中设置EditText只输入数字、字母
- Android代码设置EditText只输入数字、字母
- android代码设置EditText只输入数字、字母
- android代码设置EditText只输入数字、字母
- android代码设置EditText只输入数字、字母
- Android 设置EditText只输入数字、字母
- android 设置EditText只可以输入字母或者数字
- 设置EditText只输入数字、字母
- 设置EditText只输入数字、字母
- 设置EditText只输入数字、字母
- 设置EditText只输入数字、字母
- android edittext 只允许输入字母,数字
- Android 设置EditText只输入数字
- Android设置EditText只接受数字输入
- Android学习笔记——设置EditText只输入数字、字母
- Android:限制EditText中只可以输入字母和数字
- 限制EditText只输入数字和字母
- Eclipse自动生成注释,修改注释模板
- 为什么找不到对象,除了丑还有别的原因吗?
- Notepad++ 常用快捷键 (备忘)
- ibatis 一条信息要用到两张表里面的数据 ibatis怎么配置?
- ios--UINavigationController详细介绍
- Android代码设置EditText只输入数字、字母
- 陕西6名消防官兵光荣入选"十大杰出青年"
- cmd下查看端口使用情况
- 堆栈的几个经典应用
- android手机赚钱软件排行
- 春天的芹菜
- Emit 学习之旅(1) ----Emit 概述
- 孙俪邓超港籍身份曝光揭明星卯足劲加入港籍
- 玩纸牌贴纸条什么的都弱爆了