我有一个包含多个UITextField的视图。 因此,当键盘弹出时,我遍历视图以找出哪个文本字段是第一响应者。
我尝试打印出所有的视图类,它显示UITextFieldLabel而不是UITextField,任何人都知道这是什么?我想找出哪些文本被重点关注。
这是我使用的代码。
extension UIView{
func firstResponder() -> UIView?{
if self.isFirstResponder()
{
return self
}
for view in self.subviews
{
if view.isFirstResponder()
{
return view
}
}
return nil
}
}
答案 0 :(得分:0)
UITextField
具有您的视图可以符合的协议。选择或编辑文本字段时,您将在委托方法中获取该文本字段。
class myView: UIView, UITextFieldDelegate {
var anExampleTextField: UITextField?
override init(frame: CGRect) {
super.init(frame: frame);
self.anExampleTextField.delegate = self
}
//if using interface builder
override func awakeFromNib() {
super.awakeFromNib()
self.anExampleTextField.delegate = self
}
func textFieldDidBeginEditing(textField: UITextField) {
//The selected textfield will be passed here.
}
}