我想要什么:
textFiled
中包含textLabel
和tableView
。当 tableView 出现时,textFiled
将成为firstResponder
并带出键盘。
我遇到的问题:
如果在textField.becomeFirstResponder()
或viewWillApper
内调用viewDidLoad
,则应用仅显示键盘(textFiled
且textLabel
根本未显示)。
我是如何解决的:
将textField.becomeFirstResponder()
电话移至viewDidApper
问题:
我是否配偶在becomeFirstResponder()
函数中调用viewDidApper
函数?否则键盘将阻止所有其他视图
非常感谢
答案 0 :(得分:6)
考虑viewDidLoad
,viewWillAppear
和viewDidAppear
的含义。
viewDidLoad
表示视图控制器具有视图 - 但该视图还不是界面的一部分。
viewWillAppear
表示视图控制器的视图将成为界面的一部分 - 但还没有。
viewDidAppear
表示视图控制器的视图 成为界面的一部分。
在文本字段召唤键盘之前,您需要将视图作为界面的一部分。只有这样,表格视图才会显示显示和配置。换句话说,此时界面已经确定为其实际形式,我们已准备好将键盘正确放置在其上方。