点评WWDC 2018 Session 204 - Automatic Strong Passwords and Security Code AutoFill。
你需要使用UITextField
进入系统键盘(没有自定义控件),并将textContentType
设置为.oneTimeCode
(iOS 12中的新功能)。
let securityCodeTextField = UITextField()
securityCodeTextField.textContentType = .oneTimeCode
操作系统将使用此UITextContentType
集自动检测来自消息的验证码(包含“代码”或“密码”一词的消息)。
iOS支持UITextField,UITextView以及采用UITextInput协议的任何自定义视图上的密码自动填充。系统键盘将textContentType设置为.oneTimeCode
singleFactorCodeTextField.textContentType = .oneTimeCode
重要
tvOS应用程序还可以使用相同的内容类型设置支持密码自动填充。使用控制中心键盘,远程应用程序或连续性键盘使用iOS设备输入密码时,键盘上方会出现自动填充快速键。填充登录字段时,焦点也会前进到登录按钮。
警告
如果对安全代码输入文本字段使用自定义输入视图,则iOS无法显示必要的自动填充UI。