[英]Password autofill is not working in swift
有 6 个文本字段接受 otp(一次性密码)。但是当我获得 otp 并尝试在 UITextField 上使用密码自动填充时,只有最后 4 个填充正在使用 otp。 但并非所有领域。 我附上了屏幕截图
在这里,我已将所有 textContentType 设置为 .oneTimeCode 如何解决问题,请帮忙。
尝试按顺序命名您的文本字段txt1 txt2 txt3 txt4 tt5 txt6
override func viewDidLoad() {
super.viewDidLoad()
txt1.becomeFirstResponder()
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if ((textField.text?.count)! < 1 ) && (string.count > 0) {
if textField == txt1 {
txt2.becomeFirstResponder()
}
if textField == txt2 {
txt3.becomeFirstResponder()
}
if textField == txt3 {
txt4.becomeFirstResponder()
}
if textField == txt4 {
txt5.becomeFirstResponder()
}
if textField == txt5 {
txt6.becomeFirstResponder()
}
if textField == txt6{
txt6.becomeFirstResponder()
}
textField.text = string
return false
} else if ((textField.text?.count)! >= 1) && (string.count == 0) {
if textField == txt2 {
txt1.becomeFirstResponder()
}
if textField == txt3 {
txt2.becomeFirstResponder()
}
if textField == txt4 {
txt3.becomeFirstResponder()
}
if textField == txt5 {
txt4.becomeFirstResponder()
}
if textField == txt6 {
txt5.becomeFirstResponder()
}
if textField == txt1{
txt6.resignFirstResponder()
}
textField.text = ""
return false
} else if (textField.text?.count)! >= 1 {
textField.text = string
return false
}
return true
}
快乐编码
试试这个自动填充文本字段
txtOTP.textContentType = .oneTimeCode
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.