UITextField 的自动填充已损坏

Rya*_*yan 4 xcode autofill ios swift

在我的应用程序的注册表单中,键盘建议输入我的名字、姓氏,最后输入一个强密码,但不建议输入我的电子邮件地址。我在故事板和代码中将内容类型设置为电子邮件:

在此输入图像描述

self.emailTxt.textContentType = .emailAddress
Run Code Online (Sandbox Code Playgroud)

但没有建议。您可以在下图中看到,键盘会建议用户的名字和姓氏,但对于电子邮件来说,它是空白的。在此输入图像描述

在下一张图片中,我展示了在 Safari 上注册网站时,它确实会建议我的电子邮件。更重要的是,它建议自动填充整个页面:在此输入图像描述

我可能会错过什么?

编辑:我创建了一个github 存储库来演示该错误。每个字段都应该自动填充。我遇到的情况是,在此应用程序中,电子邮件可以使用,但密码不建议创建新密码。没有什么是一起工作的。

Rya*_*yan 5

因此,总体问题是苹果的自动填充功能很难确定我是否正在创建帐户。从他们的文档中可以看出:

\n\n
\n

默认情况下,系统根据 input\n view\xe2\x80\x99s textContentType 属性选择键盘;但是,您可以混合输入视图\xe2\x80\x99s\n 文本内容类型和键盘类型来显式定义所需的\n 键盘。例如,如果您的网站使用电子邮件地址作为用户名,请将输入视图\xe2\x80\x99s textContentType 属性设置为 .username,并将 KeyboardType 属性设置为 .UIKeyboardType.emailAddress。

\n
\n\n

因此,对于电子邮件地址,我将内容类型设置为用户名,将键盘类型设置为电子邮件,一切都已修复。

\n