Mam formant EditText. Po dotknięciu klawisza programowanego zostanie wyświetlone okienko, jednak po naciśnięciu klawisza "enter/ok/return", a następnie formantu EditText nadal będzie fokus i klawiatura w górę.
Jak zamknąć softkeyboard i usunąć z niego ostrość?Jak usunąć fokus i usunąć klawiaturę na urządzeniu z systemem Android?
Odpowiedz
Możesz spróbować wykonać SetFocus()
na innym elemencie układu.
Jeśli mówimy o przycisk „ENTER/OK/Return” na samej klawiaturze może trzeba założyć KeyListener
sprawie kontroli EditText
, aby wiedzieć, kiedy SetFocus()
na innym elemencie.
W pliku XML szablonu, określ imeOption na swoim EditText:
android:imeOptions="actionGo"
Następnie dodaj detektor akcji do EditText w działalności w pliku java
mYourEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_GO) {
// hide virtual keyboard
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mYourEditText.getWindowToken(), 0);
return true;
}
return false;
}
});
Gdzie mYourEditText stanowi EditText object
Hmm dziękuję. ale jestem w stanie napisać imeOpt w układzie lub editekście? i mam błąd na EditorInfo, jakiś pomysł? – carefacerz
Czy możesz wyjaśnić EditorInfo? – carefacerz
Spowoduje to zamknięcie klawiatury, ale nie spowoduje usunięcia fokusa we wszystkich przypadkach. IE Android poprosi o skupienie się na pierwszym dostępnym widoku, który może się skupić. – lostintranslation
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editTextField.getWindowToken(), 0);
To tylko ukryje klawiaturę. Nie spowoduje to usunięcia ostrości. – lostintranslation
private void hideDefaultKeyboard() {
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
//you have got lot of methods here
}
Upewnij się EditText XML posiada:
android:id="@+id/myEditText"
android:imeOptions="actionDone"
Następnie ustaw słuchacz do EditText (z Kotlin oraz z fragmentu):
myEditText.setOnEditorActionListener({ v, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_DONE) {
myEditText.clearFocus()
val imm = activity.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(view!!.windowToken, 0)
}
false
})
- 1. Jak usunąć fokus w javascript?
- 2. Usunąć fokus programowo?
- 3. Wstawianie zbiorcze na urządzeniu z systemem Android
- 4. Jak usunąć fokus z pola tekstowego?
- 5. Jak parametryzować opcje menu na urządzeniu z systemem Android?
- 6. Jak zainstalować zaufany certyfikat CA na urządzeniu z systemem Android?
- 7. usunąć kursor z EditText
- 8. Dostęp do bazy danych sqlite na urządzeniu z systemem Android
- 9. Programowa zmiana języka na urządzeniu z systemem Android
- 10. Fałszywe połączenie przychodzące na urządzeniu z systemem Android
- 11. Analizowanie notatek na urządzeniu z systemem Android nie będzie działało.
- 12. Nie można odwrócić wyszukiwania DNS na urządzeniu z systemem Android
- 13. Programowo programowo usunąć aplikację z launchera (na urządzeniu zrootowanym)
- 14. która apk działa na urządzeniu z systemem Android ionic
- 15. ustaw fokus na pole wprowadzania i pokazując klawiaturę z Androidem za pomocą jquery mobile na pageoucie
- 16. Android, jak mogę usunąć kontrolę wideoView?
- 17. Jak zmienić element menu w menu opcji na urządzeniu z systemem Android?
- 18. Android: Jak usunąć pliki z pamięci zewnętrznej?
- 19. Android Usuń miękką klawiaturę podczas dotykania widoku listy
- 20. Jak usunąć obiekt z Realm Database Android?
- 21. Jak usunąć cień przycisku (Android)
- 22. Android - Swipe usunąć RecyclerView
- 23. Jak usunąć obramowanie na układ
- 24. Jak usunąć współczynnik grawitacji z odczytów przyspieszeniomierza w akcelerometrze 3-osiowym z systemem Android
- 25. Jak debugować aplikację Xamarin.iOS na fizycznym urządzeniu z systemem iOS
- 26. Jak usunąć/usunąć push z Bitbucket?
- 27. Jak usunąć/usunąć aplikację z projektu Firebase?
- 28. Android: jak usunąć element z listy Widok i tablicaAdapter
- 29. Android Studio: Jak debugować uruchomiony proces na urządzeniu z systemem Android?
- 30. Android CardView usunąć wyściółka
Rozumiem, że jest to rozwiązanie podane przez wielu ludzi, ale Nie podoba mi się to, ponieważ zamiast input.clearFocus() po prostu działa (np usuwając fokus z tego wejścia), musisz ustawić ostrość na coś innego !? Wydaje się to być sprzeczne z intuicją. – marienke