我想用EditText(只允许int)和KeyEvent开发一个小部件。问题是当按下'0'时,它检测到KeyEvent,但它不会在我的EditText上写'0'。它应该添加数字,以便我按下它们。使用EventKey的EditText上的setText
et1.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (KeyEvent.ACTION_UP != event.getAction()) {
switch (keyCode) {
case KeyEvent.KEYCODE_0:
//Do something...
break;
default:
return false;
}
}
return true;
}
});
我试过做这样的事情,但它不是那么高效。
et1.setText(et1.getText().toString + "0");
你知道某种解决方案吗?
以防万一你重新发明轮子:'android:inputType =“number”'参见http://stackoverflow.com/questions/4645119/how-to-set-only-numeric-value-for-edittext-在-机器人。 – 2012-02-24 17:13:37
我在我的activity.xml中使用过它,但是我的问题是当我按下键时,它没有出现在我的EditText上,但它生成了一个KeyEvent。我可以在两个时间吗? – 2012-02-24 17:29:38