Ios 如何检测ViewController是否已激活?

Ios 如何检测ViewController是否已激活?,ios,xcode,uiviewcontroller,activation,uitabcontroller,Ios,Xcode,Uiviewcontroller,Activation,Uitabcontroller,这是我用xcode学习ios编程的第二天——所以这应该是一个简单的问题——只是我想不出来 我正在使用带有3个选项卡项的故事板和UITabViewController。 在第二个选项卡上,我想在用户选择该选项卡时启动相机 如何检测第二个视图已激活?在这种情况下是否会触发事件?您也可以使用ViewController的viewDidLoad方法。使用此方法执行您需要执行的任何操作: - (void)viewDidLoad { } 实现视图控制器的viewWillDisplay:或viewDidDi

这是我用xcode学习ios编程的第二天——所以这应该是一个简单的问题——只是我想不出来

我正在使用带有3个选项卡项的故事板和UITabViewController。 在第二个选项卡上,我想在用户选择该选项卡时启动相机


如何检测第二个视图已激活?在这种情况下是否会触发事件?

您也可以使用ViewController的viewDidLoad方法。使用此方法执行您需要执行的任何操作:

- (void)viewDidLoad
{
}

实现视图控制器的viewWillDisplay:或viewDidDisplay:方法。谢谢,它可以工作-但不是我想要的那样。。。。关键是,在这个事件中,我显示了相机,这样用户就可以拍照了,拍照后,图像显示在ViewController的ImageView中。关键是,此事件也是在显示imagepicker后触发的。。。如何在从tabcontroller激活视图时完成某项操作,或者我如何区分激活的来源?然后解释与实际发生的情况相比,您真正想要的是什么。即使只加载了一次视图控制器,ViewWillAspect和ViewDidAspect也有可能被多次调用。如果可行,请尝试ViewDidLoad。正如我前面提到的,我需要在从tabcontroller激活视图时启动相机。不幸的是,据我所知,每个应用程序生命周期只调用一次viewDidLoad,即使在拍摄完照片后,也会调用viewdidAppear……您提到,每当选择第二个选项卡时,都要激活相机。我相信无论何时选择该选项卡,都应该调用该选项卡的视图控制器的viewDidLoad。不是这样吗?如果视图控制器已加载到内存中,则可能不会调用它。在这种情况下,是的,viewwillbeen/viewdidebeen是您的最佳选择。有一些确定何时启用相机和何时不启用相机的标志。是的,在ViewWillDisplay:或ViewDidDisplay:中使用标志可以。