【问题标题】:Fetching from the NSFetchedResultsController directly直接从 NSFetchedResultsController 获取
【发布时间】:2011-05-15 11:05:11
【问题描述】:

我有一个视图控制器,用于将核心数据模式中的数据填充到 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 并使用它来获取模式。 请给我建议。

【问题讨论】:

    标签: iphone core-data uitextview nsfetchedresultscontroller


    【解决方案1】:

    如果您将fetchedResultsController 的引用发送到myViewController,您可以通过创建新的indexPath(增加行数)并再次使用objectAtIndexPath 来获取下一个对象。您必须首先检查是否确实存在下一个对象。如果涉及到部分,这就更复杂了。

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

    【讨论】:

    • 好吧,我已经用更简单的方式完成了。我可以从 myViewController 访问 fetchedResultsController 并为任何下一个或上一个项目构建索引路径并实现它。我每天都觉得核心数据很有趣。
    猜你喜欢
    • 1970-01-01
    • 2010-12-09
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多