[置顶] EditText设置输入的类型,只能输入纯数字,只能输入手机号码,只能输入邮箱等等。

作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985转载请说明出处。
下面以数字、电话为例讲述EditText怎么设置输入类型,其他类型可以参考InputType类。
1) 只能输入数字
EditText et = (EditText) findViewById(R.id.etTest);
et.setInputType(InputType.TYPE_CLASS_NUMBER);
2) 只能输入电话号码
EditText et = (EditText) findViewById(R.id.etTest);
et.setInputType(InputType.TYPE_CLASS_PHONE);//电话
3) 邮箱地址
EditText et = (EditText) findViewById(R.id.etTest);
et.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
4) 禁止输入任何文本
EditText et = (EditText) findViewById(R.id.etTest);
et.setInputType(InputType.TYPE_NULL);
// 禁止输入(不弹出输入法)上述也是隐藏输入法的一种方式,还有另外一种隐藏办法,
可查看android隐藏IME(输入法)输入框
不让程序默认升起IME输入框有两种方法:
1.让EditText失去焦点,使用EditText的clearFocus方法
2.强制隐藏Android输入法窗口,在IME类中我们通过实例化输入法控制对象,通过hideSoftInputFromWindow来隐藏IME输入框。

5)只能输入数字和小数点
edittext.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
此时注意:只设置InputType.TYPE_NUMBER_FLAG_DECIMAL是无法实现只能输入数字和小数点的,必须InputType.TYPE_CLASS_NUMBER 和
InputType.TYPE_NUMBER_FLAG_DECIMAL同时设置才可以

你可能感兴趣的:(java,android,程序员,EditText,CSDN博客)