web-dev-qa-db-fra.com

Comment puis-je obtenir un bouton "Terminé" dans le clavier logiciel?

comment puis-je avoir un bouton "Terminé" dans mon clavier logiciel (Samsung Galaxy 10.1, Android 3.1) lors de l'écriture dans un EditText?

En utilisant

 <EditText
     Android:id="@+id/comment"
     Android:layout_width="772dp"
     Android:layout_height="200dp"/>

Je reçois

enter image description here

Si possible, j'aimerais également supprimer ce bouton "pièce jointe".

Quelqu'un peut aider?

MODIFIER

J'ai réussi à obtenir un bouton "Terminé" en utilisant

Android:inputType="textImeMultiLine",

mais le bouton "retour" a disparu ...

Comment puis-je avoir les deux? (J'ai posé cette nouvelle question ici ).

20
jul

ajoutez ceci à votre EditText XML:

Android:imeOptions="actionDone"

ou, pour le définir à partir du code:

yourEditText.setImeOptions(EditorInfo.IME_ACTION_DONE);

pour plus, lisez ceci

53
waqaslam

Utiliser mon téléphone Galaxy S2

Pour le code ci-dessous, chaque EditText aura un bouton Retour qui ajoute une nouvelle ligne:

EditText editText = new EditText(this);

Pour le code ci-dessous, chaque EditText aura un bouton Suivant qui naviguera vers le champ suivant et le dernier un bouton Terminé qui fermera le clavier:

EditText editText = new EditText(this);
editText.setInputType(InputType.TYPE_CLASS_TEXT);

Pour le code ci-dessous, pas de changement, chaque EditText a un bouton Retour:

EditText editText = new EditText(this);
editText.setImeOptions(EditorInfo.IME_ACTION_DONE);

Pour le code ci-dessous, tous les EditText auront un bouton Terminé et tous fermeront le clavier.

    EditText editText = new EditText(this);
    editText.setInputType(InputType.TYPE_CLASS_TEXT);
    editText.setImeOptions(EditorInfo.IME_ACTION_DONE);

Pour les mises en page, utilisez le code ci-dessous:

<EditText
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:inputType="text"
    Android:imeOptions="actionDone"/>
3
Gary Davies

Dans mon émulateur Intel x86 au moins, la touche "Terminé" n'apparaît que si vous spécifiez le type d'entrée: "téléphone", "numéro", "texte", "textePassword", ... avec Android: inputType. Si vous n'en spécifiez pas ou que vous définissez "textMultiLine", "Done" n'apparaît pas.

Android:imeOptions="actionDone"

et

editText.setImeOptions(EditorInfo.IME_ACTION_DONE);

semblent inutiles, puisqu'ils ne changent rien, ni dans le premier cas (où "Done" apparaît quand même), ni dans le second (car "Done" continue à ne pas apparaître)!

1
Apostolos

Utilisez TextView.setImeOptions et passez actionDone.

0
Parag Chauhan