我正在使用我正在制作的iPhone应用程序遇到一些问题。我的xcdatamodel中有两个实体:Team和Camera。每个团队都有一个摄像头,每个摄像头都属于一个团队。我已经将Team实体正确地实现到我的基于导航的应用程序中,以便我可以将团队添加到表视图中。但是,当我点击披露按钮并调用团队的Camera实体以便我拍照并存储它时,我的应用程序崩溃了。
这是我的RootViewController.m中与Camera实体相关的代码。
-(void)insertCameraWithTeam:(NSManagedObject *)team picture:(NSString *)picture {
NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
NSManagedObject *camera = [NSEntityDescription insertNewObjectForEntityForName:@"Camera" inManagedObjectContext:context];
[camera setValue:picture forKey:@"picture"];
}
#pragma mark -
#pragma mark Table view data source
- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath {
NSManagedObject *team = [self.fetchedResultsController objectAtIndexPath:indexPath];
CameraDetailView *cameraDetailView = [[CameraDetailView alloc] initWithRootController:self team:team];
[self.navigationController presentModalViewController:cameraDetailView animated:YES];
[cameraDetailView release];
}
“initWithRootController ...”在我的CameraDetailView.m中以这种方式实现:
-(id)initWithRootController:(RootViewController *)aRootController team:(NSManagedObject *)aTeam /*camera:(NSManagedObject *)aCamera*/ {
if ((self = [super init])) {
self.rootController = aRootController;
self.team = aTeam;
}
return self;
}
时出错
- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath {
被调用。
有人知道我做错了吗?
答案 0 :(得分:0)
我通过使用try / catch块发现了我的NIB文件中的链接有问题。解决方案:首先将代码放在try / catch块中以捕获错误!