Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/97.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在viewDidLoad中使用BecomeFirstResponder是否正确_Ios_Uitextfield_Uikeyboard_Viewdidload_Becomefirstresponder - Fatal编程技术网

Ios 在viewDidLoad中使用BecomeFirstResponder是否正确

Ios 在viewDidLoad中使用BecomeFirstResponder是否正确,ios,uitextfield,uikeyboard,viewdidload,becomefirstresponder,Ios,Uitextfield,Uikeyboard,Viewdidload,Becomefirstresponder,我想在打开viewcontroller时打开文本字段的键盘 所以我打电话给textfield成为第一响应者,它总是有效的 但我想知道 打电话成为第一反应者对吗?还是必须在viewcontroller中调用其他生命周期事件 如果视图确实加载,则调用的位置正确。。我必须手动调用主线程还是不需要,因为默认情况下需要查看didload? 你所做的没有什么绝对的错误 从逻辑上讲,有人可能会认为viewDidLoad太早了,因为您的文本字段视图不在界面中;也许ViewDidEmbeen会是一个更符合逻辑的地

我想在打开viewcontroller时打开文本字段的键盘

所以我打电话给textfield成为第一响应者,它总是有效的

但我想知道

打电话成为第一反应者对吗?还是必须在viewcontroller中调用其他生命周期事件 如果视图确实加载,则调用的位置正确。。我必须手动调用主线程还是不需要,因为默认情况下需要查看didload?
你所做的没有什么绝对的错误


从逻辑上讲,有人可能会认为viewDidLoad太早了,因为您的文本字段视图不在界面中;也许ViewDidEmbeen会是一个更符合逻辑的地方。但是,在这种情况下,您必须记住,在视图控制器的生命周期中,viewDidAppear可以被多次调用,因此您需要区分这是否是第一次,这并不困难。

感谢您的回答。我想将其保留在ViewDidLoad中是正确的做法。。我知道viewDidload是主线程。我是否在主线程内调用以使其更安全。