提问人:Jatin Dave 提问时间:8/16/2022 最后编辑:ArasuvelJatin Dave 更新时间:9/7/2022 访问量:102
有时,在将对象从一个控制器传递到另一个控制器时,NSManagedobject 对象会出错,是否有任何方法可以将对象作为值类型 objC 传递
Sometime NSManagedobject object become fault when passing object from one controller to another, is there any way to pass object as a value type objC
问:
第一个控制器
OptiiMobileTaskDetailViewController *taskDetailVC = (OptiiMobileTaskDetailViewController *)segue.destinationViewController;
[taskDetailVC setTask:task];
第二个控制器
-(void) setTask:(Task *)task {
_task = task;
}
这段代码工作正常,但是当我们在第二个 VC 中使用任务对象时,我们得到了 Fault 对象,那么有没有其他方法可以在视图控制器之间传递 NSManaged对象
答:
1赞
Smit Patel
9/7/2022
#1
+(instancetype) taskWithTaskID:(NSNumber *)taskID {
Task *task = [self getManagedObjectForKey:@"taskID" keyValue:taskID];
if (!task) {
//Create task
task = [[OptiiMobileDataStore sharedInstance] createNewObjectNamed:NSStringFromClass([self class])];
task.taskID = taskID;
[[OptiiMobileDataStore sharedInstance] insertObject:task];
}
return task; }
并在获取默认值之前获取新的数据副本
_task = [Task taskWithTaskID:self.taskID];
评论