iOS 13 только иногда предлагает надежный пароль после переключения с предыдущего текстового поля - PullRequest
1 голос
/ 27 января 2020

Я борюсь с добавлением надежной генерации пароля в UITextField на iOS 13. Он вообще не работает для моего основного поля нового пароля, несмотря на добавление textContentType к .newPassword. Однако, это работает для моего поля подтверждения пароля, только если я выбрал его после моего основного поля пароля. Вот настройка для этих текстовых полей, которая происходит в init.

    valueTextfield.font = .boldSystemFont(ofSize: 28)
    valueTextfield.autocapitalizationType = .none
    valueTextfield.autocorrectionType = .no
    valueTextfield.textColor = .black
    valueTextfield.textAlignment = .center
    valueTextfield.borderStyle = .none
    valueTextfield.tintColor = .primary
    valueTextfield.sizeToFit()valueTextfield.textContentType = .newPassword
    valueTextfield.placeholder = "Password".localized

    confirmationTextField.font = .boldSystemFont(ofSize: 28)
    confirmationTextField.textColor = .black
    confirmationTextField.textAlignment = .center
    confirmationTextField.autocapitalizationType = .none
    confirmationTextField.autocorrectionType = .no
    confirmationTextField.textContentType = .newPassword
    confirmationTextField.borderStyle = .none
    confirmationTextField.tintColor = .primary
    confirmationTextField.placeholder = "Confirm".localized

контроллера. Даже добавление текстового поля в пустой контроллер не помогает. Это ошибка iOS 13?

Ответы [ 2 ]

1 голос
/ 27 января 2020

Убедитесь, что у вас есть эти 3 свойства UITextField, которые должны быть правильно установлены для работы автозаполнения пароля:

textField.isSecureTextEntry = true
textField.autocapitalizationType = .none
textField.textContentType = .password

И самое главное, включите автозаполнение пароля: Settings > Passwords & Accounts > AutoFill Passwords

0 голосов
/ 09 февраля 2020

Видимо, способ, которым я хочу, чтобы сгенерированный пароль работал в данный момент, невозможен. Чтобы сработал надежный пароль, текстовое поле имени пользователя должно находиться на том же экране , что и текстовое поле пароля. Это странно, но после исследования приложений, таких как Twitter, я обнаружил, что ни у одного из них нет надежного предложения пароля для одного текстового поля с паролем. Неизвестно, это ошибка или особенность. Мне придется go переопределить эту функцию вручную.

...