加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – NSManagedObjectContext,传递它的最佳方式?访问它?

发布时间:2020-12-14 17:27:26 所属栏目:百科 来源:网络整理
导读:我有一个关于如何传递NSManagedObjectContext的问题.在我的应用程序中,似乎是我的AppDelegate处理NSManagedObjectContext,所以我不应该在我的其他ViewControllers中创建其他NSManagedObjectContexts. 所以问题是…… 有没有任何惯例或智能方法来做到这一点?
我有一个关于如何传递NSManagedObjectContext的问题.在我的应用程序中,似乎是我的AppDelegate处理NSManagedObjectContext,所以我不应该在我的其他ViewControllers中创建其他NSManagedObjectContexts.

所以问题是……

有没有任何惯例或智能方法来做到这一点?

谢谢.

解决方法

我传递NSManagedObjectContext的方法是在每个视图控制器中传递一个iVar.我通常会修改初始化程序以包含赋值,类似这样的….

MyNewViewController.h

@interface MyNewViewController : UIViewController {
     NSManagedObjectContext *managedObjectContext;
 }
 ...

MyNewViewController.m

@implementation MyNewViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil andContext:(NSManagedObjectContext *)ctx {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        managedObjectContext = ctx;
    }
    return self;
}

....

然后,当您调用视图控制器时,只需使用修改后的初始化程序.喜欢…

MyNewViewController *nv = [[MyNewViewController alloc] initWithNibName:@"MyNewViewController" bundle:nil andContext:self.managedObjectContext];

现在您已经获得了可以在视图控制器中使用的managedObjectContext的引用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读