Android设置EditText只接受数字输入

本文介绍两种方法来限制Android中EditText控件仅能输入数字。方法一通过DigitsKeyListener允许输入小数;方法二使用NumberKeyListener并重写getAcceptedChars()及getInputType()方法,仅限输入整数。

EditText et; et = (EditText) findViewById(R.id.et); // 方法1:建立一个DigitsKeyListener,然后把它设为你的EditText的KeyListener DigitsKeyListener numericOnlyListener = new DigitsKeyListener(false,true); et.setKeyListener(numericOnlyListener); // 方法2:为EditText设置一个NumberKeyListener,然后重写getAcceptedChars()方法和getInputType()方法 et.setKeyListener(new NumberKeyListener() { @Override protected char[] getAcceptedChars() { return new char[] { '1', '2', '3', '4', '5', '6', '7', '8','9', '0' }; } @Override public int getInputType() { // TODO Auto-generated method stub return android.text.InputType.TYPE_CLASS_PHONE; } });

小结:

第一种可以输入小数。

第二种由于设置了TYPE_CLASS_PHONE所以只能输入整数。且比较灵活。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值