如何将核心数据值从tableview传递到另一个视图

时间:2016-08-12 02:57:39

标签: ios objective-c uitableview core-data

我正在尝试将数据从一个表视图传递到另一个视图。两者都是相同的核心数据。我只需要根据所选表格创建另一个视图来显示正确的数据。这是代码:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([[segue identifier] isEqualToString:@"showDetailTwo"]) {
        NSIndexPath *path = [self.tableView indexPathForSelectedRow];
        [self.tableView deselectRowAtIndexPath:path animated:YES];
        DetailViewController *moviewDetailVC = [segue destinationViewController];
        NSManagedObject *movies=[self.moviesArray objectAtIndex:path.row];
        //        NSLog(@"%@", movies);
        Movies *movieL =[NSKeyedUnarchiver unarchiveObjectWithData:[movies valueForKey:@"posterImage"]];
        [moviewDetailVC.movieSelected setPosterImage: movieL];

    }
}

但是当我进入下一个屏幕时,数据为空

2016-08-11 23:12:02.020 OMBDSearch[20175:1682899] (null)

我是核心数据的新手,所以我需要一些帮助。我经常搜索这个并没有解决我的问题。

1 个答案:

答案 0 :(得分:-1)

我试图以困难的方式做。这样就解决了我的问题:

    DetailViewController *destination = [segue destinationViewController];
    NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
    destination.movieSelected = [self.moviesArray objectAtIndex:indexPath.row];