Ios 如何等待容器视图中的视图加载?

Ios 如何等待容器视图中的视图加载?,ios,iphone,uiviewcontroller,properties,viewdidload,Ios,Iphone,Uiviewcontroller,Properties,Viewdidload,我遇到了这样的情况: 我有一个带有容器视图的UIViewControllerVC1。此容器视图包含另一个UIViewController–VC2。我需要在VC2中设置一个属性,设置后将连接到VC2的一些标签上的文本更新为IBOutlets。我可以通过执行我在脚本中创建的带有标识符“segueToVC2”的segue来访问VC2。设置VC1–PROPERTY1的属性后,我调用performsguewithidentifier方法,即在PROPERTY1的didSet方法中调用performsgue

我遇到了这样的情况:

我有一个带有容器视图的
UIViewController
VC1。此容器视图包含另一个
UIViewController
VC2。我需要在VC2中设置一个属性,设置后将连接到VC2的一些标签上的文本更新为
IBOutlet
s。我可以通过执行我在脚本中创建的带有标识符“segueToVC2”的segue来访问VC2。设置VC1–PROPERTY1的属性后,我调用
performsguewithidentifier
方法,即在PROPERTY1的
didSet
方法中调用
performsguewithidentifier
。问题是,由container视图持有的VC2视图尚未加载,我连接到VC2的IBOutlet都为零。这会导致我的应用程序崩溃

我如何解决这个问题


提前谢谢。

我不确定IBOutlets是什么,还没有编程Objective-C。 另外,我不确定为什么需要使用
performsguewithidentifier
,因为您告诉我们VC2包含在容器视图中

VC1中的容器视图使用嵌入式segue链接到VC2。 您将在
prepareForSegue
中获得VC2的副本,并且在
viewDidLoad
viewWillDisplay中可以设置VC2的属性

反正我在Xamarin.iOS上也是这么做的。
祝您好运。

您必须在
viewDidLoad
方法中设置VC2中IBOutlet的属性(文本、颜色等)。现在,要从VC1设置这些值,您应该在VC2上创建一些属性,以保存要从VC1传递到VC2的数据。然后在VC1中的“prepareForSegue”方法上设置您想要在VC2上设置的属性。然后在VC2
viewDidLoad
中,使用这些属性来更新您的IBOutlets。

好的,我已经用与处理
VC1
相同的方法解决了这个问题:
我已经直接从
AppDelegate
设置了
VC2
所需的属性,一切正常。

如果在故事板中设置容器视图,您只需在
prepareForSegue
中设置VC2,而无需手动调用
performsgue