Comment faire passer un UITextField sécurisé de saisie de texte (masquer le mot de passe) dans Swift?
J'ai actuellement un UITextfield
avec une icône en forme d'œil en elle que lorsqu'il est pressé est censé basculer le sécuriser l'entrée de texte sur et en dehors.
Je sais que vous pouvez coche sécurisées "entrée de texte" à cocher dans les attributs de l'inspecteur, mais comment le faire de sorte qu'il bascule à chaque fois que l'icône est pressé?
OriginalL'auteur SwiftyJD | 2016-06-17
Vous devez vous connecter pour publier un commentaire.
Utiliser ce code,
iconClick est variable boolean, ou vous avez besoin d'autre condition à vérifier,
œil méthode d'Action:
de l'espoir à ses précieux
Ne pas cette fuite le mot de passe dans des claviers quand secureTextEntry est définie à false?
Juste une petite mise à jour, .secureTextEntry est maintenant .isSecureTextEntry
Ravi que faire si j'ai plusieurs champ de mot de passe pour atteindre le même. Ai-je besoin d'ajouter d'action distinct pour chaque champ de mot de passe? Comment puis-je la rendre générique?
définir l'action à partir de plusieurs bouton set tag méthode distincte et que la même méthode ci-dessus des thats résoudre, espérons que c'est utile.
OriginalL'auteur Iyyappan Ravi
Pourquoi utiliser un supplément de
var
. Dans la méthode d'action de la œil bouton il suffit de faire comme ci-dessousMise à JOUR
Swift 4.2 (comme par @ROC commentaire)
var
ici, la réponse de @Suryakant affiché est le meilleur je pense.dans swift 4.2 vous pouvez vous écrivez
password.isSecureTextEntry.toggle()
mise à jour de répondre à votre commentaire. Merci.
OriginalL'auteur Suryakant
Un effet secondaire non, c'est que si l'utilisateur bascule à l'insécurité, et puis retour pour sécuriser le texte sera effacé si l'utilisateur continue à taper. Le curseur peut aussi se retrouver dans la mauvaise position, à moins de réinitialiser le texte sélectionné la gamme.
Ci-dessous est une application qui s'occupe de ces cas (Swift 4)
Cet extrait est à l'aide de la
replace(_:withText:)
fonction parce qu'il déclenche la.editingChanged
événement, qui se trouve être utile dans mon application. Tout simplement la mise entext = existingText
doit être fine.Génial, c'est ce que je cherchais!
OriginalL'auteur zath
Swift 4 solution
Vous n'avez pas besoin supplémentaire si l'instruction pour de simples bascule isSecureTextEntry propriété
Mais il y a un problème lorsque vous mettez de isSecureTextEntry UITextField ne pas recalculer la largeur du texte et nous avons de l'espace supplémentaire à la droite du texte. Pour éviter cela, vous devez remplacer le texte de cette façon
OriginalL'auteur chibis0v
Utilisation UITextFiled droite pour afficher les togle buuton
OriginalL'auteur Phani Sai
Pour Objectif c
définir l'image pour RightButton Dans la Méthode viewdidload
et puis définissez la méthode d'action pour que RightButton
OriginalL'auteur Mad Burea
Swift 3
OriginalL'auteur Basir Alam
Comme d'autres l'ont noté, la propriété est
secureTextEntry
, mais vous ne trouverez pas cela dans leUITextField
de la documentation, il est effectivement hérité par unUITextField
par le biais de laUITextInputTraits
protocole https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextInputTraits_Protocol/#//apple_ref/occ/intfp/UITextInputTraits/secureTextEntryVous pouvez simplement changer cette valeur à chaque fois que votre bouton est tapé:
OriginalL'auteur Paulw11
Voici votre réponse pas besoin de prendre de bool var:
OriginalL'auteur iVarun
Swift 3
OriginalL'auteur Christopher Larsen
Dans Swift 4
OriginalL'auteur Keshav Gera
OriginalL'auteur Jayesh Miruliya
Affectation de la modification des valeurs de
YES/NO
àtrue/false
des valeurs booléennes.Vous pouvez essayer ce code..
je pense que c'est utile.
OriginalL'auteur Ravi Dhorajiya
essayer cette ligne:
OriginalL'auteur Bhadresh Kathiriya
Utilisez le bouton avec l'œil de l'image
et faire buttonHandler méthode
jeu de Tag pour le bouton de valeur 1
OriginalL'auteur Yagnesh Dobariya
Vous devez d'abord définir l'image(visible ou masquer le bouton d'oeil pour un état différent de l'état (sélectionné ou normal)
de se connecter IBAction et écrire du code comme
OriginalL'auteur singh.jitendra
Pour Xamarin gens:
passwordField.SecureTextEntry = passwordField.SecureTextEntry ? passwordField.SecureTextEntry = false : passwordField.SecureTextEntry = true;
OriginalL'auteur megaKertz
Essayer ce code swift 4, essayé de faire un code réutilisable au sein d'un contrôleur. J'ai mis en image différente pour les boutons storyboard, comme indiqué dans le lien https://stackoverflow.com/a/47669422/8334818
OriginalL'auteur Pramod More