在 appdelegate 加载我的 mainWindow.xib 之前设置 coredata

发布于 2024-08-04 10:58:23 字数 242 浏览 8 评论 0原文

我在 appDelegate 中设置了 coredata,但它首先加载该 xib 文件中的 mainWindow.xib 和相应的控制器+视图。这些控制器需要有一个 ManagedObjectContext 才能正确加载。在 xib 解档后,它会运行我的 appDelegate 中的代码。

我如何设置 coredata 然后加载 mainWIndow.xib?或者只是确保 coredata 在解压我的 mainWindows.xib 之前正确初始化?

I have setup coredata in my appDelegate, but it first loads the mainWindow.xib and the corresponding controllers+views in that xib file. Those controllers need to have a managedObjectContext to load properly. And after the xib is unarchived it runs the code in my appDelegate.

How can i setup my coredata and then load the mainWIndow.xib? Or just make sure coredata is initialized properly before unarchiving my mainWindows.xib?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里的微风 2024-08-11 10:58:23

您可以在 UIApplicationDelegate 子类上重写 awakeFromNib ,并在那里设置 Core Data。一旦所有对象从 nib 文件中取消归档,但在它们的实例开始执行其工作之前,就会调用此方法。将 awakeFromNib 视为在实例开始运行之前调整任何行为的最后机会。

注意:

  • 当重写 awakeFromNib 时,您必须调用 [super awakeFromNib],否则您的超类可能无法正确初始化。
  • awakeFromNib 的调用顺序未定义,因此您永远不能从 awakeFromNib 内向同一 Nib 的任何其他对象发送消息。作为奖励,这也意味着 awakeFromNib 保证在同一 Nib 中的任何其他对象需要您的服务并向您发送任何消息之前运行。

You could override awakeFromNib on your UIApplicationDelegate subclass, and setup Core Data there. This method will be called once all objects has been unarchived from your nib file, but before their instances begin to do their work. See awakeFromNib as your last chance to tweak any behavior before the instances start running.

Observe:

  • When overriding awakeFromNib you must call [super awakeFromNib], or else your superclass might not initialize properly.
  • The order of the calls to awakeFromNib is undefined, so you may never send messages to any other objects from the same Nib from within awakeFromNib. As a bonus this also means that awakeFromNib is guaranteed to run before any other object in the same Nib needs your services and sends any messages to you.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文