Swift 在哪里调用becomeFirstResponder(),在ViewDidDisplay或ViewWillDisplay?
我想要什么:Swift 在哪里调用becomeFirstResponder(),在ViewDidDisplay或ViewWillDisplay?,swift,uiviewcontroller,first-responder,Swift,Uiviewcontroller,First Responder,我想要什么: 表格视图中包括文本字段和文本标签。当出现表格视图时,文本字段将成为第一响应者,并显示键盘 我遇到的问题: 仅当在视图中调用文本字段时,应用程序才会显示键盘。becomeFirstResponder()将出现或视图加载(文本字段和文本标签根本不显示) 我是如何修复的: 当我将textField.becomeFirstResponder()调用移动到viewdide 问题: 我是否要调用视图显示函数中的becomeFirstResponder()函数?否则,键盘将阻止所有其他视图 非常
表格视图中包括文本字段
和文本标签
。当出现表格视图时,文本字段将成为第一响应者,并显示键盘
我遇到的问题:
仅当在视图中调用文本字段时,应用程序才会显示键盘。becomeFirstResponder()
将出现或视图加载
(文本字段
和文本标签
根本不显示)
我是如何修复的:
当我将textField.becomeFirstResponder()
调用移动到viewdide
问题:
我是否要调用视图显示
函数中的becomeFirstResponder()
函数?否则,键盘将阻止所有其他视图
非常感谢想想viewDidLoad
,视图将出现
,以及viewdidappeage
的意思
viewDidLoad
表示视图控制器有一个视图,但该视图还不是界面的一部分
视图将出现
表示视图控制器的视图将成为界面的一部分,但尚未出现
viewdide出现
表示视图控制器的视图已成为界面的一部分
在文本字段调用键盘之前,您需要将视图作为界面的一部分。只有这样,表视图才会真正显示和配置。换言之,此时接口已固定为其实际形式,我们已经准备好将键盘正确放置在其上方。您更准确地说是添加到窗口中,而不是成为界面的一部分。@malhal在我看来,这两种说法似乎是相同的。好的,视图将显示意味着UIView接收到的视图将移动到窗口。i、 e.窗口属性现在有效。