首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何等待容器视图中的视图加载?

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

Stack Overflow用户
提问于 2016-03-20 15:43:49
回答 3查看 466关注 0票数 0

我遇到了这样的情况:

我有一个UIViewController VC1,它有一个容器视图。此容器视图包含另一个UIViewController - VC2。我需要在 VC2 中设置一个属性,并在设置该属性之后,更新与VC2连接为IBOutlet的标签上的文本。我可以通过执行在故事板中创建的带有标识符"segueToVC2“的segue来访问VC2。在设置了performSegueWithIdentifier - PROPERTY1的属性之后,我调用了一个performSegueWithIdentifier方法,即在property 1的didSet方法中调用performSegueWithIdentifier。问题是,由容器视图持有的VC2视图尚未加载,而我连接到VC2的IBOutlets视图都为零。这会导致我的应用程序崩溃。

我该如何解决这个问题?

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-03-21 22:07:32

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

票数 0
EN

Stack Overflow用户

发布于 2016-03-20 16:00:50

我不知道IBOutlets是什么,还没有给目标C编程.另外,我不知道为什么需要使用performSegueWithIdentifier,因为您告诉我们VC2包含在容器视图中。

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

无论如何,这就是我在Xamarin.iOS上做的。祝好运。

票数 0
EN

Stack Overflow用户

发布于 2016-03-20 16:03:16

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36115861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档