2011-09-15 2 views
1

Je suis coincé avec des conseils de dictionnaire en entrant le mot de passe (ou tout autre champ de texte). Je le fais de cette façon:Comment supprimer les indications du dictionnaire lors de la saisie de texte?

editText.setInputType(InputType.TYPE_CLASS_TEXT | 
         InputType.TYPE_TEXT_VARIATION_PASSWORD | 
         InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS); 

Mais de toute façon lorsque l'utilisateur sélectionne les prévisions du clavier comme « sur » - lors de la saisie mot de passe, il montre des notes du dictionnaire, ce qui est stupide pour les mots de passe!

Qu'est-ce que je fais mal?

+0

Je crois que le clavier/inputmethodservice que vous utilisez est mauvaise conduite. Il peut et devrait détecter les édits marqués comme mot de passe et empêcher les suggestions pour eux. Utilisez-vous le clavier système par défaut? –

+0

Consultez ce lien http://stackoverflow.com/questions/1959576/turn-off-autosuggest-for-edittext. Problème similaire. réponse surprenante. – Ronnie

Répondre

2

textNoSuggestions 0x00080001
Peut être combinée avec du texte et ses variations pour indiquer que l'IME ne devrait pas afficher de suggestions de mots basés sur un dictionnaire. Correspond à TYPE_TEXT_FLAG_NO_SUGGESTIONS.

Plus d'info ici: http://developer.android.com/reference/android/R.styleable.html#AutoCompleteTextView_inputType

Utilisez les options pour le texte ÉMI Modifier.

<EditText android:id="@+id/edtPass" 
    android:inputType="textPassword" 
    android:imeOptions="textNoSuggestions"/> 

En savoir plus sur les types d'entrée: http://developer.android.com/reference/android/widget/TextView.html#attr_android:inputMethod

Est-ce aussi un coup d'oeil à ici http://groups.google.com/group/android-developers/browse_thread/thread/d3c055137498bbc9?pli=1

+0

Dans certains appareils HTC Sense (pas dans tous mais dans certains spécifiques), cela ne semble pas fonctionner. C'est parmi les plus rares. J'ai un HTC Wildfire et un HTC Magic. Je reçois le comportement normal d'androïde dans ces IE.) Aucune suggestion. –

1

Vous devez utiliser la méthode setTransformationMethod() comme ceci:

editText.setTransformationMode(new PasswordTransformationMethod()); 

android.text.method.TransformationMethod

Ou ce qui est également possible est de définir la valeur android:password à true dans votre XML de mise en page comme ceci:

<EditText 
    ... 
    android:password="true"/> 
+0

mais cette méthode ne fait que reformater l'entrée pour les symboles semblables à un astérisque, est-ce que cela va aussi supprimer les indications du dictionnaire? – barmaley

+0

pas sûr mais je pense que cela va fonctionner et sinon peut-être en combinaison avec 'android: inputType =" textPassword "' ou le code que vous utilisez maintenant –

+0

Nope il ne fonctionne pas ni réglage "android: mot de passe" ni setTransformationMethod – barmaley

Questions connexes