Ich habe ein EditText-Steuerelement. Wenn ich darauf tippe, wird das Softkeyboard angezeigt, aber wenn ich "enter/ok/return" drücke, dann hat das EditText-Steuerelement immer noch den Fokus und die Tastatur hoch.
Wie schließe ich das Softkeyboard und entferne den Fokus davon?Wie kann ich den Fokus entfernen und die Tastatur von Android entfernen?
Antwort
Sie könnten versuchen, SetFocus()
auf ein anderes Element in Ihrem Layout zu tun.
Wenn Sie sprechen über die „Enter/ok/Return“ -Taste auf der Tastatur selbst können Sie eine KeyListener
auf der EditText
Kontrolle, um einzurichten müssen zu wissen, wann man SetFocus()
auf ein anderes Element.
In der Layout-XML-Datei, eine imeOption auf EditText angeben:
android:imeOptions="actionGo"
nächsten eine Aktion Hörer auf Ihre EditText in den
Java-Datei Aktivitäten hinzufügenmYourEditText.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;
}
});
Wo mYourEditText ein EditText ist Objekt
Hmm, vielen Dank. aber sollte ich das imeOpt im Layout oder im edittext schreiben? und ich habe Fehler auf EditorInfo, irgendeine Idee? – carefacerz
Können Sie die EditorInfo erklären? – carefacerz
Dadurch wird die Tastatur geschlossen, der Fokus wird jedoch nicht in allen Fällen entfernt. IE Android wird den Fokus auf die erste verfügbare Ansicht, die sich fokussieren kann, anfordern. – lostintranslation
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editTextField.getWindowToken(), 0);
Dies wird nur die Tastatur verbergen. Der Fokus wird nicht entfernt. – lostintranslation
private void hideDefaultKeyboard() {
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
//you have got lot of methods here
}
Stellen Sie sicher, dass Ihre EditText XML hat:
android:id="@+id/myEditText"
android:imeOptions="actionDone"
Dann setzen Zuhörer auf Ihre EditText (mit Kotlin, und aus einem Fragment):
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. Fokus von einem EditText in Android entfernen
- 2. Javascript - Entfernen Sie den Fokus von Eingabe
- 3. Fokus von TextField entfernen JavaFX
- 4. Android Webview Wie kann man den Fokus/den Status eines Elements beim Laden entfernen?
- 5. Entfernen: Fokus auf: aktiv
- 6. Android wie Fokus Fokus bearbeiten Text auf schließende Tastatur
- 7. So entfernen Sie den Standardwert für die Eingabe im Fokus
- 8. Wie entfernt man den Fokus von UITextField?
- 9. Entfernen Sie den Fokus von der Taste einmal geklickt
- 10. So entfernen Sie den Fokus von der Senden-Schaltfläche
- 11. Entfernen Sie den Fokus auf die erste Textbox
- 12. Wie kann ich das Android Sample Soft Keyboard entfernen?
- 13. Fokus von einem Inhalt editierbare div entfernen
- 14. entfernen span-Element auf Fokus
- 15. Wie kann ich die Typoskript-Definition entfernen?
- 16. Kann den Listener von ViewPropertyAnimator nicht entfernen
- 17. Ich kann den japanischen IME nicht von meinem Android-Emulator entfernen
- 18. Kann ich den Standardlink für Android in webview entfernen
- 19. Wie kann ich den Whitespace von Pandas DataFrame-Headern entfernen?
- 20. Wie kann ich den umgekehrten Backslash von $ (ProjectDir) entfernen?
- 21. Wie kann ich Schlagschatten von TextInput entfernen?
- 22. Wie kann ich den Button von ExpandableListView entfernen?
- 23. Entfernen Fokus-Overlay-Farbe von webview
- 24. Rekursion: Wie kann ich entfernen
- 25. Wie kann ich die cameraOverlayView vom Bearbeitungsbildschirm von UIImagePickerController entfernen?
- 26. Wie kann ich die unteren Randlinien von Rasterzeilen entfernen?
- 27. Android Entfernen Soft Keyboard beim Berühren der Listenansicht
- 28. In Android EditText, wie Sie die Vorschlagsleiste von der Tastatur entfernen?
- 29. Wie kann ich feststellen, welche TextBox zuletzt den Fokus hatte?
- 30. Edittext behält den Fokus, wenn Tastatur und Bildlauf der Listenansicht
Ich verstehe, dass dies die Lösung von vielen Menschen gegeben ist, aber Ich mag es nicht, weil anstelle von input.clearFocus() einfach funktioniert (d. H den Fokus von dieser Eingabe löschen), müssen Sie nun den Fokus auf etwas anderes setzen !? Es scheint nur kontraintuitiv zu sein. – marienke