在iOS 12中通过确认自动填充新密码

时间:2018-08-21 09:56:02

标签: uikit ios12

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

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

以及新的密码字段

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

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

在用户输入用户名后,如何将两种密码字段都预先填充相同的密码?

2 个答案:

答案 0 :(得分:1)

iOS 14更新

answer from cornr在iOS 12和13上运行良好。

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

似乎在iOS 14上,Apple最终使其docu example与之匹配,从而创建了一个新帐户或更改了密码。这意味着两个密码字段都应使用.newPassword

话虽如此,建议在iOS 14.2上为我们完全失败设置强密码。有关更多详细信息,请参见this post

答案 1 :(得分:0)

我能够自动完成2个密码字段,将第一个字段的contentType声明为:.password

  1. 。用户名
  2. 。密码
  3. .newPassword