如何让UITextField的textContentType属性执行任何操作?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (77)

这里是关于UITextField的textContentType属性的文档

使用此属性为键盘和系统提供有关用户输入内容的预期语义含义的信息。例如,您可以指定UITextContentTypeEmailAddress用户填写以接收电子邮件确认的文本字段。当您提供有关您希望用户输入到文本输入区域的内容的信息时,系统可以在某些情况下自动选择合适的键盘,并改进键盘更正和主动整合其他文本输入机会。 由于每个文本输入区域的预期语义含义应尽可能具体标识,因此不能将多个值组合为一个textContentType属性。有关可以使用的可能值,请参阅文本内容类型 ; 默认情况下,此属性的值为nil

这看起来很简单,但我无法弄清楚如何使这个实际上做任何事情。我创建了一个简单的演示应用程序,添加了一个文本字段,并设置self.textField.textContentType = UITextContentTypeEmailAddress。然后我用iOS 10.0.1在iPhone 7上运行它。

至少我希望这会自动选择电子邮件键盘,而不必明确地设置它。它不 - 我得到我的iPhone上的标准键盘。

我也希望它能显示我自己的QuickType建议的电子邮件地址。我在其他地方看到过这种情况 - 如果我在Safari中并且它检测到我正在编辑电子邮件字段,则会将我的家庭和工作电子邮件地址显示为建议。再说一遍,即使文档建议它应该这样做,它也不会这样做。

即使我也设置keyboardTypeUIKeyboardTypeEmailAddress,我仍然没有得到我期待的QuickType建议。

有一个讨论这种新功能的WWDC讨论会,但是从来没有任何建议说除了设置这个单独的属性之外,你还需要做其他任何事情。

我错过了一些步骤,还是这实际上没有做我所期望的?

提问于
用户回答回答于

这最终在iOS 11的第三方应用程序中得到了支持。我有一个使用安装在iOS 11 beta 1上的iOS 10.3 SDK构建的应用程序。它包含带有textContentType = UITextContentTypeEmailAddress和这些字段的字段,可以正确地在我的联系人卡片上建议两个电子邮件地址。我也有textContentType = UITextContentTypePostalCode正确建议我的邮政编码的字段。

除了现有类型,iOS装置11还增加了UITextContentTypeUsernameUITextContentTypePassword,其可被用于支持密码自动填写为应用程序

用户回答回答于

仅供参考(因为我几乎无法在谷歌和苹果文档中找到它):

在新的iOS中提供了一个新的功能(看图像)。这里是关于它们的描述wwdc

所属标签

可能回答问题的人

  • 人生的旅途

    10 粉丝484 提问6 回答
  • 不吃貓的鱼oo

    5 粉丝466 提问6 回答
  • 富有想象力的人

    4 粉丝0 提问5 回答
  • Richel

    8 粉丝0 提问4 回答

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励