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所以只能输入整数。且比较灵活。