J'ai un champ de mot de passe dans mon application (UITextField). Lorsque l'utilisateur entre du texte dans le champ, je veux qu'il affiche *
au lieu du texte qu'il a saisi.
J'ai essayé d'utiliser la variable UIControlEventEditingDidEnd
de UITextField
mais elle ne montre qu'un *
à la fin de l'édition, mais je souhaite qu'elle affiche le *
s dès qu'un texte est entré, comme dans tout champ de mot de passe de courrier électronique en ligne. Comment puis-je obtenir le comportement souhaité?
Je ne comprends pas vraiment votre question, mais je suppose que vous voulez un UITextField qui affiche des points pour les caractères, comme le fait chaque champ de mot de passe sur l'iPhone. Pour cela, vous voulez définir la propriété secureTextEntry de cet UITextField (UITextField a une telle propriété car elle est conforme au protocole UITextInputTraits) à YES:
textfield.secureTextEntry = YES;
HTH
Vous pouvez également définir cela dans Interface Builder. Sélectionnez votre champ de texte et vérifiez le paramètre "sécurisé" dans l'inspecteur.
Si vous utilisez la dernière version de Xcode (version 9), cliquez sur le champ UITextField pour lequel vous souhaitez définir l'entrée, puis cliquez sur l'inspecteur d'attributs et cochez la case "Entrée de texte sécurisée".
Swift 3,3
textfield.isSecureTextEntry = true