Слушатель для кнопки Готово на EditText?
Если у меня есть EditText и я хочу послушать, если пользователь нажимает кнопку "Готово" на клавиатуре.. как бы я это сделал?
3 ответа:
код
final EditText edittext = (EditText) findViewById(R.id.edittext); edittext.setOnKeyListener(new View.OnKeyListener() { public boolean onKey(View v, int keyCode, KeyEvent event) { if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) { Toast.makeText(HelloFormStuff.this, edittext.getText(), Toast.LENGTH_SHORT).show(); return true; } return false; } });
в этом 'edittext' является идентификатором textfield
проверьте эту ссылку просто установите setOnKeyListener в свой editText
Dinash ответ хороший, но он не работает на всех устройствах. Ниже код отлично работает для всех устройств
edittext.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_DONE) { Toast.makeText(HelloFormStuff.this, edittext.getText(), Toast.LENGTH_SHORT).show(); return true; } return false; } });
на тот же Джон ответ, но с заменой лямбда:
etPointCombatFirst.setOnEditorActionListener((v, actionId, event) -> { if (actionId == EditorInfo.IME_ACTION_DONE) { Toast.makeText(HelloFormStuff.this, edittext.getText(), Toast.LENGTH_SHORT).show(); return true; } return false; });