我有一个非常简单的表格,当点击单元格时会打开一个带有一个UITextfield的新视图。我想要的是键盘自动弹出,而无需用户触摸UITextfield。
这一切都是在Interface Builder中完成的,所以我不确定该如何做。我猜需要在某个时候设置焦点吗?
谢谢
我有一个非常简单的表格,当点击单元格时会打开一个带有一个UITextfield的新视图。我想要的是键盘自动弹出,而无需用户触摸UITextfield。
这一切都是在Interface Builder中完成的,所以我不确定该如何做。我猜需要在某个时候设置焦点吗?
谢谢
要立即弹出键盘,你需要使用以下代码将文本字段设置为第一响应者:
[textField becomeFirstResponder];
您可能希望将此放置在viewDidAppear:
方法中。
Swift 3和4:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
textField.becomeFirstResponder()
}
super.viewDidAppear(animated)
。 - Piidrooverride func viewDidLoad() {
super.viewDidLoad()
textField.becomeFirstResponder()
}
最好在主线程上添加第一响应者 -
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
self.textField.becomeFirstResponder()
}
当视图控制器视图被添加为子视图时,这将非常有用。
UITextViewDelegate
委托并将其连接到IB中的委托吗? - SupertecnoboffviewDidAppear(_ animated: Bool)
方法可以让文本框(textField)成为第一响应者(即获取焦点)。具体代码如下:override func viewDidAppear(_ animated: Bool) { textField.becomeFirstResponder() }
- emy