2009-07-15 11 views
89

Ho un campo password nella mia applicazione (UITextField). Quando l'utente inserisce il testo nel campo, voglio che visualizzi * invece del testo che hanno inserito.Come si oscura il testo in un campo password in un'applicazione iPhone?

Ho provato con l'UIControlEventEditingDidEnd di UITextField ma mostra solo un * alla fine quando si modifica ma voglio che per visualizzare il * s non appena viene inserito alcun testo, come in qualsiasi campo della password di posta elettronica on-line. Come posso ottenere il comportamento desiderato?

risposta

174

Non capisco davvero la tua domanda, ma suppongo che tu voglia un UITextField che visualizza punti per i personaggi, che ogni campo di password sull'iPhone fa. Per questo, si desidera impostare la proprietà secureTextEntry di quel UITextField (UITextField ha una tale proprietà, perché è conforme al protocollo UITextInputTraits) su YES:

textfield.secureTextEntry = YES; 

HTH

+7

Posso impostare altri caratteri invece di punti? –

153

È inoltre possibile impostare questa in Interface Builder . Seleziona il tuo campo di testo e controlla l'impostazione "sicuro" nell'ispettore.

secure setting in Interface Builder

+7

Una cosa così semplice, ma non molto ovvia. –

+0

Grazie, di solito non vedo le istruzioni di ui builder. –

0

È possibile aggiungere una chiave percorso secureTextEntry di tipo booleano e spuntare nella User runtime definito attributi in Impostazioni Identità.

enter image description here

+0

Dovresti preferire l'opzione "Proteggi" sotto attributi per utilizzare attributi di runtime come questo. – axiixc

0

Se si utilizza l'ultima versione di Xcode, (versione 9), cliccare sul UITextField che si desidera impostare l'ingresso come password, quindi cliccare sul attributi ispettore e controllare "Secure Entry Testo ".

Problemi correlati