【问题标题】:NSFetchedResultsController one entity for sections and a different entitiy for rowsNSFetchedResultsController 一个实体用于部分,另一个实体用于行
【发布时间】:2014-01-20 22:22:00
【问题描述】:

我有两个正在使用的实体。 VideoCategory。类别有很多视频,视频只有一个类别。

我想使用NSFetchedResultsController 在 UITableView 中显示每个类别的视频。所以UITableView 中的部分将代表类别。 UITableView 的行将代表特定类别中的视频。

我只对一个实体使用了NSFetchedResultsController,我想知道是否可以用NSFetchedResultsController 做我想做的事情。

【问题讨论】:

  • 是的,如果您与类别有关系...您可以提供 sectionKey 类别
  • 同意 C_X,如果您的视频对象上有类别的外键,您应该能够做到这一点。否则,您必须一次获取每个类别。

标签: ios objective-c uitableview core-data nsmanagedobject


【解决方案1】:

是的,如果有关系,您可以这样做。假设您有 ManagedObject Video,如果设置了关系,则视频将具有属性 Category。因此,您可以将类别用作部分,但 sectionNameKeyPathv 应该是一个字符串。我希望Category 会有一个name 的属性,你可以在创建NSFetchResultController 时像这样使用Category.name 作为sectionNameKeyPath

【讨论】:

    【解决方案2】:

    您可以按照 C_x 的建议进行操作,尽管重新获取部分对象可能会变得混乱,但它会起作用。

    另一种选择是构建您自己的NSFetchedResultsController 替代品。里面没有太多的工作,然后你可以自己控制一切。

    【讨论】:

      猜你喜欢
      • 2022-01-09
      • 1970-01-01
      • 2021-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多