Я пытаюсь разработать виджет с EditText (только для int) и KeyEvent. Проблема в том, когда нажата кнопка «0», она обнаруживает KeyEvent, но не записывает «0» в мой EditText. Он должен добавить числа, чтобы я их нажимал.setText на EditText с EventKey
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- в-андроида. –
Я использовал его в своем Activity.xml, но моя проблема в том, что когда я нажимаю клавишу, она не появляется в моем EditText, но она генерирует KeyEvent. Могу ли я сделать это одновременно? –