直接从NSFetchedResultsController中获取

时间:2011-05-15 11:05:12

标签: iphone core-data uitextview nsfetchedresultscontroller

我有一个视图控制器,用于将核心数据模型中的数据填充到UITableView中,在tableViewDidSelectRowAtIndexPath委托方法中我初始化了另一个视图控制器并将单个数据显示到textview中。我初始化视图控制器的代码如下所示,

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    myViewController=[[MyViewController alloc] initWithManagedObject:[self.fetchedResultsController objectAtIndexPath:indexPath] parentViewController:self];
    myViewController.hidesBottomBarWhenPushed=YES;
    [self.navigationController pushViewController:myViewController animated:YES];
    [transcribedTextViewController release];
    }
}

现在,在新的视图控制器中,我习惯于填充上面传递的模型中的数据来填充UITextView。但我确实有一个下一个和上一个按钮,我想要使用托管对象访问fetchedResultsController我可以通过使用parentViewController完成它。但是我如何获取下一个数据。我想在下一个按钮上获取下一个数据。是否可以直接从新的视图控制器增加NSIndexPath并使用它来获取模态。 请建议我。

1 个答案:

答案 0 :(得分:1)

如果您将fetchedResultsController的引用发送给myViewController,则可以通过创建新indexPath(增加该行)并再次使用objectAtIndexPath来获取下一个对象。你必须先检查确实有下一个对象。如果涉及到各个部分,这会更复杂。

如果您不想传递fetchedResultsController,可以在其中一个核心数据对象中找到对它的引用(不记得是哪个)。