下面以数字、电话为例讲述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同时设置才可以
<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>