Tobe
Tobe

Reputation: 518

Autofilling new password with confirmation in iOS 12

I've added 3 UITextFields to create a new account by entering a username in email address format, a new password and a password confirmation. As suggested in Enabling Password AutoFill on a Text Input View. I have configured the username field like this

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

and the new password fields like this

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

Now, when the users enters an email address as username the newPasswordTextField is pre-filled with a suggestion for a strong password (as expected), but the confirmPasswordTextField isn't filled with the same suggested password. When the user directly taps into the newPasswordTextField without entering a username before both newPasswordTextField and confirmPasswordTextField are pre-filled with the same suggested password (also as suggested).

How can i combine this both situations that after the user enters a username both password fields will be pre-filled with the same password?

Upvotes: 8

Views: 2238

Answers (2)

Martijn
Martijn

Reputation: 469

iOS 14 update

The answer from cornr worked for iOS 12 and 13.

However, it fails since iOS 14 in our app, as it will now request access to Keychain to auto-fill the stored password.

It seems that per iOS 14 Apple made it finally match their docu example to create a new account or changing the password. This means that for both password fields .newPassword should be used.

Having that said, suggesting a strong password fails entirely for us on iOS 14.2. For more details see this post.

Upvotes: 3

cornr
cornr

Reputation: 693

I was able to do autocomplete for 2 password fields by declaring the contentType of the first field as: .password

  1. .username
  2. .password
  3. .newPassword

Upvotes: 3

Related Questions