Как вы скрываете текст в поле пароля в приложении iPhone?

У меня есть поле пароля в моем приложении (UITextField). Когда пользователь вводит текст в поле, я хочу, чтобы он отображал * вместо введенного текста.

Я попытался использовать UIControlEventEditingDidEnd из UITextField, но в конце он показывает только один *, но я хочу, чтобы он отображал *, как только вводился какой-либо текст, например, в любом онлайн-режиме поле пароля электронной почты. Как я могу получить желаемое поведение?

Ответ 1

Я действительно не понимаю ваш вопрос, но я предполагаю, что вы хотите UITextField, который отображает точки для символов, которые есть в каждом поле пароля на iPhone. Для этого вы хотите установить свойство secureTextEntry этого UITextField (UITextField имеет такое свойство, потому что оно соответствует протоколу UITextInputTraits), к YES:

textfield.secureTextEntry = YES;

НТН

Ответ 2

Вы также можете установить это в Interface Builder. Выберите свое текстовое поле и проверьте "безопасный" параметр в инспекторе.

secure setting in Interface Builder

Ответ 3

Вы можете добавить ключевой путь secureTextEntry типа Boolean и пометить его в пользовательских атрибутах времени выполнения в Identity Inspector.

введите описание изображения здесь

Ответ 4

Если вы используете последнюю версию XCode (версия 9), щелкните UITextField, для которого вы хотите установить ввод в качестве пароля, затем щелкните инспектор атрибутов и установите флажок "Безопасный ввод текста".

Ответ 5

Swift 3.3

textfield.isSecureTextEntry = true