Masquer le mot de passe avec «•••••••» dans un textField

Dans mon application, il y a un textField où l’utilisateur doit mettre un mot de passe et je veux que quand il entre un caractère, il le change pour «•» comment puis-je le faire?

Vous pouvez réaliser cela directement dans Xcode:

entrer la description de l'image ici

La toute dernière case à cocher, assurez-vous que l’option secure est cochée.

Ou vous pouvez le faire en utilisant le code:

Identifie si l’object texte doit masquer le texte en cours de saisie.

Déclaration

 optional var secureTextEntry: Bool { get set } 

Discussion

Cette propriété est définie sur false par défaut. La définition de cette propriété sur true crée un object texte de style mot de passe qui masque le texte en cours de saisie.

Exemple:

 texfield.secureTextEntry = true 

dans Swift 3.0 ou plus tard

 passwordTextField.isSecureTextEntry = true 

Dans XCode 6.3.1, si vous utilisez un NSTextField la case à cocher n’est pas secure .

Au lieu d’utiliser NSTextField utilisez NSSecureTextField

https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSSecureTextField_Class/index.html

Je suppose que c’est un changement de Swift / Objective-C car il existe maintenant une classe pour les champs de texte sécurisés. Dans le lien ci-dessus, il est Available in OS X v10.0 and later. Si vous en savez plus sur quand / pourquoi / quelles versions de Swift / Objective-C, XCode ou OS X

Swift 4 et Xcode Version 9+

Peut être défini via “Saisie de texte sécurisée” via Interface Builder

Saisie de texte sécurisée vérifiée via la capture d'écran du storyboard

Par programme (Swift 4)

 self.passwordTextField.secure(true)