【问题标题】:Autofilling new password with confirmation in iOS 12在 iOS 12 中通过确认自动填充新密码
【发布时间】:2019-01-27 11:45:33
【问题描述】:

我添加了 3 个UITextFields 以通过输入电子邮件地址格式的用户名、新密码和密码确认来创建新帐户。正如Enabling Password AutoFill on a Text Input View 中所建议的那样。我已经像这样配置了用户名字段

userTextField.textContentType = .username  
userTextField.keyboardType = .emailAddress

还有像这样的新密码字段

newPasswordTextField.textContentType = .newPassword  
confirmPasswordTextField.textContentType = .newPassword

现在,当用户输入电子邮件地址作为用户名时,newPasswordTextField 会预先填充一个强密码的建议(如预期的那样),但confirmPasswordTextField 不会填充相同的建议密码。 当用户在newPasswordTextFieldconfirmPasswordTextField 都预先填充相同的建议密码(也按照建议)之前直接点击newPasswordTextField 而不输入用户名。

如何结合这两种情况,在用户输入用户名后,两个密码字段都将预先填写相同的密码?

【问题讨论】:

  • 我面临着完全相同的问题,并开始把头撞到墙上。你有想过吗?
  • 这里有同样的问题。有没有人找到解决方法?

标签: uikit ios12


【解决方案1】:

通过将第一个字段的 contentType 声明为:.password

,我能够自动完成 2 个密码字段
  1. .username
  2. .password
  3. .newPassword

【讨论】:

  • 注意:它确实必须按照 .password 和 .newPassword 的顺序
  • 实际上,如果仅将确认字段设置为textContentType.newPassword,它似乎可以工作。只是不要为第一个字段设置textContentType,或者例如将其设置为.none
【解决方案2】:

iOS 14 更新

answer from cornr 适用于 iOS 12 和 13。

但是,自 iOS 14 以来,它在我们的应用程序中失败了,因为它现在将请求访问钥匙串以自动填充存储的密码。

似乎在 iOS 14 中,Apple 终于匹配了他们的 docu example 以创建新帐户或更改密码。这意味着两个密码字段都应使用.newPassword

话虽如此,在 iOS 14.2 上为我们建议一个强密码完全失败。更多详情请见this post

【讨论】:

    猜你喜欢
    • 2019-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-02
    • 2019-04-11
    • 2019-03-21
    • 2019-03-10
    • 2021-09-07
    相关资源
    最近更新 更多