Bonjour,
Je souhaiterais faire afficher le clavier lorsqu'on appui sur une zone de texte, mais je n'y arrive pas totalement. Pourtant, le code me semble correct.
J'utilise bien un OnTouchListener sur la zone de texte, et celui-ci fonctionne (il affiche un Toast).
Pour afficher le clavier, j'utilise les lignes ci-dessous, et elles marchent très bien dans un OnFocusChangeListener, mais pas dans le OnTouchListener.
Autres précisions :
- Le clavier s'affiche tout seul lorsque je clique sur une autre zone de texte, dans un alertDialog (puis le clavier se masque lorsque l'alertDialog se termine).
- J'ai essayé d'afficher le clavier (via ces deux lignes) lors d'appui sur un bouton, ça ne marche pas non plus...
Code : Sélectionner tout - Visualiser dans une fenêtre à part final InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);Les deux éléments (le listenner, et le code pour afficher le clavier) fonctionnent, mais ensemble, pour une raison que j'ignore, ça ne veux pas marcher.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 // Affiche le Toast mais n'affiche pas le clavier textview.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { if (v == textview) { mgr.showSoftInput(v, InputMethodManager.SHOW_IMPLICIT); Toast.makeText(getApplicationContext(), "touch", 1).show(); } return false; } });
Y-a-t'il une erreur dans mon code ?
Ou sinon, existe-t'il une autre méthode ?
Merci d'avance.
Partager