Apakah mungkin untuk mendeteksi saat Donetombol keyboard onScreen ditekan?
Apakah mungkin untuk mendeteksi saat Donetombol keyboard onScreen ditekan?
Jawaban:
Ya, itu mungkin:
editText = (EditText) findViewById(R.id.edit_text);
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
// do your stuff here
}
return false;
}
});
Perhatikan bahwa Anda harus mengimpor pustaka berikut:
import android.view.KeyEvent;
import android.view.inputmethod.EditorInfo;
import android.widget.TextView;
Info Editor adalah kelas yang paling berguna ketika Anda harus berurusan dengan semua jenis input pengguna di aplikasi Android Anda. Misalnya dalam operasi login / registrasi / pencarian, kita dapat menggunakannya untuk input keyboard yang lebih akurat. Kelas info editor menjelaskan beberapa atribut untuk objek pengeditan teks yang metode inputnya akan langsung berkomunikasi dengan konten teks edit.
Anda dapat mencoba dengan IME_ACTION_DONE .
Tindakan ini melakukan Doneoperasi tanpa masukan dan IMEakan ditutup.
Menggunakan setOnEditorActionListener
EditTextObj.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
boolean handled = false;
if (actionId == EditorInfo.IME_ACTION_DONE) {
/* Write your logic here that will be executed when user taps next button */
handled = true;
}
return handled;
}
});
Menggunakan Butterknife Anda bisa melakukan ini
@OnEditorAction(R.id.signInPasswordText)
boolean onEditorAction(TextView v, int actionId, KeyEvent event){
if (actionId == EditorInfo.IME_ACTION_DONE || event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
/* Write your logic here that will be executed when user taps next button */
}
return false;
}
EditorInfo.IME_ACTION_SEARCHtombol pencarian lensa saja.