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