我正在使用 Core Data 创建一个相当复杂的 iPhone 应用程序。到目前为止,一切都运行良好。然而,随着应用程序变得越来越复杂,出现了一个新问题:第一个视图控制器在 AppDelegate 完成其 applicationDidFinishLaunching 方法之前完成了它的 viewDidLoad 方法。
视图控制器不是根,它是一个标签栏控制器。有问题的 VC 是选项卡栏上默认选择的选项卡。它被 IB 实例化。
根据我的经验,以前没有发生过这样的事情,并且它抛弃了我在 AppDelegate 中所做的重要初始化(从 Core Data 获取对象并准备它们以供使用)。此外,它是间歇性的——有时代表确实先完成。
有没有其他人注意到这样的困难?任何处理此类问题的示例代码?
我想答案是让 VC 加载 AppDelegate 准备好的数据,只有当 AppDelegate 发送一条消息它已经准备好时。我有点担心这会增加一些东西,以后只会咬我的屁股。