gpt4 book ai didi

ios - 无法使用tvos中的文本字段导出集合将文本字段设置为becomeFirstResponder()

转载 作者:行者123 更新时间:2023-11-30 12:48:54 24 4
gpt4 key购买 nike

我获取了文本字段导出集合并在那里绑定(bind)了六个文本字段。我想成为文本字段导出集合中下一个文本字段的第一响应者。我从 Storyboard 中给文本字段标记 0 到 5。看,

主视图 Controller :

class ViewController: UIViewController {

@IBOutlet var txtSignUp: [UITextField]!
var arrayPlaceHolder:NSArray!

override func viewDidLoad() {
super.viewDidLoad()

arrayPlaceHolder = NSArray(array: ["1","2","3","4","5","6"])
self.setTextFieldValue()
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

private func setTextFieldValue(){

for txtField in txtSignUp{
let tagTxt = txtField.tag
txtField.attributedPlaceholder = NSAttributedString(string:arrayPlaceHolder[tagTxt] as! String, attributes:[NSForegroundColorAttributeName:UIColor.black])
if(tagTxt != ((arrayPlaceHolder.count) - 1)){
txtField.returnKeyType = .next
}
txtField.delegate = self
}
}

}

extension ViewController:UITextFieldDelegate{

func textFieldShouldReturn(_ textField: UITextField) -> Bool {

textField.resignFirstResponder()

for txt in txtSignUp{
let nextTxt = (textField.tag + 1)
if txt.tag == nextTxt {
txt.becomeFirstResponder()
break
}
}
return true
}
}

错误:

其 View 不在窗口层次结构中!

说明:

在此代码中,我无法成为下一个文本字段,成为 FirstResponder。

谁能帮我解决这个问题。

最佳答案

在 TVos 上,您必须使用 textFieldDidEndEditing 函数,因为 textFieldShouldReturn 无法设置下一个响应者:

class MyViewController: UIViewController{
@IBOutlet weak var firstTextField: UITextField!
@IBOutlet weak var secondTextField: UITextField!

override func viewDidLoad() {
super.viewDidLoad()
firstTextField.delegate = self
secondTextField.delegate = self
firstTextField.tag = 0
secondTextField.tag = 1
}
}
extension MyViewController: UITextFieldDelegate {
func textFieldDidEndEditing(_ textField: UITextField) {
if (textField.tag == 0){
secondTextField.becomeFirstResponder()
}
}
}

关于ios - 无法使用tvos中的文本字段导出集合将文本字段设置为becomeFirstResponder(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41258609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com