J'ai un contrôle EditText. Si j'appuie dessus, le clavier contextuel apparaîtra quand j'appuierai sur "enter/ok/return", puis sur le contrôle EditText, il aura toujours le focus et le clavier sera en haut.
Comment fermer le clavier logiciel et supprimer le focus?Comment effacer la mise au point et supprimer le clavier sur Android?
Répondre
Vous pouvez essayer de faire SetFocus()
sur un autre élément de votre modèle.
Si vous parlez de la touche « entrée/ok/retour » sur le clavier lui-même, vous devrez peut-être mettre en place un KeyListener
sur le contrôle EditText
afin de savoir quand SetFocus()
sur un autre élément.
Dans le fichier XML de mise en page, spécifiez un imeOption sur votre EditText:
android:imeOptions="actionGo"
Ensuite, ajoutez un écouteur d'action à votre EditText dans le fichier java de l'activité
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;
}
});
Où mYourEditText est un EditText objet
Hmm merci. mais suis-je capable d'écrire l'image dans la mise en page ou dans le texte? et j'ai eu une erreur sur EditorInfo, une idée? – carefacerz
Pouvez-vous expliquer l'EditorInfo? – carefacerz
Ceci supprimera le clavier mais ne supprimera pas la mise au point dans tous les cas. IE Android demandera de se concentrer sur la première vue disponible qui peut se concentrer. – lostintranslation
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editTextField.getWindowToken(), 0);
Cela ne fera que masquer le clavier. Cela ne supprimera pas la mise au point. – lostintranslation
private void hideDefaultKeyboard() {
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
//you have got lot of methods here
}
Assurez-vous que votre XML EditText a:
android:id="@+id/myEditText"
android:imeOptions="actionDone"
auditeur Réglez ensuite à votre EditText (avec Kotlin, et d'un 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. Problèmes de mise au point sur le clavier
- 2. WPF HwndHost mise au point clavier
- 3. Comment supprimer la mise au point d'un composant actuellement ciblé?
- 4. Mise au point de l'application Android sur HTC Hero
- 5. Mise au point absolue dans la mise en page Android
- 6. Supprimer la couleur de mise au point par défaut de GridLayout et EditBox dans android
- 7. Comment modifier l'ordre de mise au point dans un panneau personnalisé avec la navigation au clavier?
- 8. Comment réinitialiser/supprimer la mise en surbrillance/la mise au point de la bordure chromée?
- 9. Problème de mise au point du clavier Tricky C# form
- 10. Mise au point sur l'étiquette, TextBlock et la bordure
- 11. Perdre la mise au point d'un JTextField
- 12. Capture de raccourcis clavier dans une iframe: mise au point?
- 13. WPF UserControl échange et conserve la mise au point du clavier
- 14. DataGridView saute sur la mise au point par le code
- 15. Android: Récupérer la mise au point en utilisant SurfaceView
- 16. Plus d'un EditText - pas de mise au point, pas de clavier logiciel? (Android)
- 17. Réglage de la mise au point sur la vue texte
- 18. Comment faire pour supprimer le style de mise au point sur une liste en C# .Net
- 19. C# détecter l'application mise au point mise au point
- 20. Mise au point clavier sur les éléments de la zone de liste dans WPF
- 21. Android 2.1 WebView et saisie au clavier
- 22. Mise au point automatique sur mobile Chrome
- 23. Comment effacer la mémoire du clavier?
- 24. Mise au point d'un service
- 25. Changement d'icône lors de la mise au point et de la défocalisation du widget Tab Android
- 26. Android: Boîte de dialogue Clavier show souple automatiquement mise au point est sur un EditText ne fonctionne pas
- 27. Comment puis-je empêcher la mise au point dans Windows?
- 28. comment supprimer sublayout de la mise en page dans Android?
- 29. Mise au point de l'application Web sur le palmier?
- 30. Désactiver la saisie au clavier sur Android TimePicker
Je comprends que c'est la solution donnée par beaucoup de gens, mais Je ne l'aime pas, car au lieu de input.clearFocus() simplement de travail (c.-à-d. effacer l'attention de cette entrée), vous devez maintenant mettre l'accent sur autre chose!? Cela semble juste contre-intuitif. – marienke