当我在iOS中使用Safari时,我点击了一个需要输入姓名和地址的表单,我在键盘区域获得了快捷方式。例如,当焦点位于名字字段时,这是键盘。我可以点击" Robert"而不是输入名字。
类似的事情发生在姓氏,电话,电子邮件,邮政编码的字段中。
我可以在UITextField
的原生iOS应用中获得类似的功能吗?有没有办法标记一个字段,以便键盘提供这些快捷方式的建议?
答案 0 :(得分:6)
您可以通过设置autocorrectionType
的{{1}}来打开或关闭它。 UITextField
的默认值为autocorrectionType
。这意味着你不需要做任何事情,默认情况下会显示出来。
UITextAutocorrectionTypeYes; //开启
UITextAutocorrectionTypeDefault; //开启
UITextAutocorrectionTypeNo; //关闭
除了设置UITextAutocorrectionTypeDefault
值之外,您还需要确保autocorrectionType
设备中的Predictive
已开启。如果关闭Keyboards Setting
,即使您将Predictive
更改为autocorrectionType
,也无法显示建议。
<强>更新强>
您可以更改UITextAutocorrectionTypeYes
进行选择,并显示建议类型。建议来自textContentType
。例如,您需要电话建议
Contacts
答案 1 :(得分:2)
请注意,如果屏幕上有电子邮件和密码,有时本机钥匙串检测会覆盖textContentType = email,因此使用textContentType的自动填充会停止为电子邮件字段工作。像&#34;创建帐户&#34;如果他们不太可能在钥匙串中拥有现有凭据,则最好禁用钥匙串。解决这个问题
要停用钥匙串,只需执行以下操作:emailTextField.textContentType = UITextContentTypeEmail;
然后电子邮件自动填充应该再次起作用:
var input = [ [ '2018-05-28T21:51:00Z',
0.00000858,
0.00000857,
0.00000860,
0.00000855,
12511.81490226 ],
[ '2018-05-28T21:52:00Z',
0.00000853,
0.00000850,
0.00000856,
0.00000847,
12687.20140187 ],
[ '2018-05-28T21:53:00Z',
0.00000848,
0.00000847,
0.00000850,
0.00000846,
12708.9320888 ]
];
var output = _.zipObject(['T', 'O', 'H', 'L', 'C'], _.zip.apply(_, input));
答案 2 :(得分:1)
对于iOS 13,我发现只有在设置以下所有属性的全部3 时,电子邮件建议才会启用:
emailTextField.textContentType = .emailAddress
emailTextField.keyboardType = .emailAddress
emailTextField.autocorrectionType = .yes
您可以以编程方式或通过故事板进行操作。
答案 3 :(得分:0)