Ho alcuni intenti all'interno di un controller di tabulazione e per uno di essi ho un testo di modifica che devo sapere con certezza quando è attivo e quando perde questo focus. Ho mappato la maggior parte degli eventi come focus listener, OnEditorActionListener e così via, ora il mio unico problema rimane che quando ho messo a fuoco compare la tastiera virtuale e voglio chiuderla: 1) con il pulsante done e non dal pulsante Indietro sul telefono (disattivare il pulsante Indietro per chiudere la tastiera mentre la tastiera è visibile) 2) rilevare l'evento del pulsante Indietro mentre la tastiera è visibile in modo da poter passare lo stato attivo ad altri controlli.Rileva evento precedente su tastiera Android
Ho provato diversi modi, ma senza successo, come onBackPressed, onConfigurationChanged (aggiungi hiddenKeyboard nel manifest), key_down sull'attività e così via, ma senza successo.
Qualcuno ha avuto successo? Praticamente voglio quando la tastiera è visibile e premo sul telefono, il mio testo di modifica per perdere lo stato attivo (otherControl.requestFocus -> che è un layout relativo).
mi mostra che cosa hai provato finora – confucius
1. questo txtSearchBar .setOnEditorActionListener (new EditText.OnEditorActionListener() \t {\t \t booleano pubblico su EditorAzione (T extView v, int ActionID, KeyEvent evento) \t { \t se (event.getKeyCode() == KEYCODE_BACK) \t { \t \t layoutFocus.requestFocus(); \t \t \t \t} \t reso falso; \t} \t}); 2. metodo 2 on onBackPressed, layoutFocus.requestFocus(); 3.aggiungi hiddenKeyboard nel manifesto per questa attività e mettere \t @Override \t public void onConfigurationChanged (Configuration newconfig) – Catalin
Impossibile aggiungere altro codice come non posso rispondere alla mia domanda, se ho più di 100 punti reputazione :) – Catalin