Cza*_*zar 4 iphone core-data uitabbarcontroller ipad nsmanagedobjectcontext
我有一个架构问题.我的应用程序在应用程序窗口中使用TabBarController.ApplicationDelegate创建managedObjectContext,虽然它实际上不需要它.
TabBarController中的每个ViewController都是一个NavigationViewController.每个NavigationController的第一个视图控制器是我的自定义视图.所有都是通过Interface Builder创建链接.
现在,如何以正确的方式传递managedObjectContext?实际上我需要我的视图尽快加载数据,以便当用户选择选项卡或浏览NavigationControllers时,数据已经存在.
所以我的问题是:
感谢所有的想法!
Ale*_*lex 10
您通常应该远离从应用程序委托获取共享对象.它使它的行为太像一个全局变量,并且有一大堆与之相关的问题.单身人士只是花哨的全球变量,所以除非真的有必要,否则应该避免这些变数.
我会managedObjectContext为每个视图控制器添加一个属性,并在创建它们时指定它.这样,您的视图控制器与应用程序委托没有紧密的联系.
至于何时获取数据,你应该懒惰地做.核心数据真的很快,所以我会等到viewWillAppear:你的提取.如果等到viewDidAppear:,则视图已经在屏幕上,并且数据加载时会出现闪烁.但请注意,viewWillAppear:每当您的视图变得可见时(例如,当用户点击导航栏上的后退按钮,或者模态视图控制器被取消时),就会调用它,因此您可能想要跟踪是否已经加载数据并跳过后续调用的加载.
| 归档时间: |
|
| 查看次数: |
2063 次 |
| 最近记录: |