92 votes

Comment désactiver l'EditText dans Android

Comment puis-je désactiver la saisie dans un EditText dans Android ?

1 votes

Désactiver le clavier lors de la saisie dans EditText ?

1 votes

Il y a deux champs editText. le premier est destiné à la saisie de l'email. si l'email est valide, le deuxième champ editText doit être activé. mais le problème est que lorsque l'on tape un email invalide et que l'on clique sur le bouton suivant du clavier souple, le deuxième champ de texte est activé et l'on peut saisir des données même si j'ai fait edittext.setEnabled(false). j'utilise Android 2.3.1.

72voto

chaitanya Points 358

Vous pouvez utiliser EditText.setFocusable(false) pour désactiver l'édition
EditText.setFocusableInTouchMode(true) pour activer l'édition ;

6 votes

C'était mon problème. J'ai supposé qu'après setFocusable(false) Je pourrais simplement retourner setFocusable(true)... ce n'est pas le cas. Réglage de setFocusableInTouchMode(true) a fait l'affaire pour moi.

49voto

Gabriel Negut Points 6081

En code :

editText.setEnabled(false);

Ou, en XML :

android:editable="false"

43voto

Midhun Points 264

Je pense que c'est un bug dans Android Il peut être corrigé en ajoutant ce patch :)
Consultez ces liens question 1 et question 2

J'espère que cela vous sera utile.

119 votes

Pour ceux qui préfèrent voir le code ici plutôt que d'utiliser un lien hypertexte : editText.setEnabled(false); en combinaison avec editText.setFocusable(false); y parviendra.

9 votes

Il en va de même pour le XML : android:enabled="false" et android:focusable="false" . Merci les gars !

14voto

MByD Points 78505

En supposant que editText c'est vous EditText objet :

editText.setEnabled(false);

2voto

uday Points 257

Le code ci-dessous désactive l'EditText dans Android

editText.setEnabled(false);

0 votes

Il suffit de mettre la propriété focusable de votre edittext à "false" et vous avez terminé. <!-- begin snippet : js hide : false --> <!-- language : lang-html --> <EditText Android:id="@+id/EditTextInput" Android:layout_width="fill_parent" Android:layout_height="wrap_content" Android:focusable="false" Android:gravity="right" Android:cursorVisible="true"> </EditText> <!-- end snippet -->

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X