【问题标题】:fetchedResultsController from 2 entitiesfetchedResultsController 从 2 个实体
【发布时间】:2011-01-18 06:57:06
【问题描述】:

我正在学习 CoreData 并开始在我的一个项目中使用它。

我使用fetchedResultsController 从CoreData 中获取数据以填充uitableview 就好了。

我遇到的问题是我需要从 2 个实体中填充 1 个表。 这就是我现在所拥有的

   NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
        NSEntityDescription *entity = [NSEntityDescription entityForName:@"Contact" inManagedObjectContext:delegate.managedObjectContext];

  [fetchRequest setEntity:entity];

这只会从“联系人”实体获取数据,但我还需要使用“类别”实体的数据填充表格。我不知道该怎么做。

基本上是最终结果,我想让tableview 显示类似 (假设联系人有 3 个,类别有 2 个项目)

uiTableindex0 : fetchContact 0 uiTableindex1 : fetchContact 1 uiTableindex2 : fetchContact 2 uiTableindex3 : fetchCategory 1 uiTableindex4 : fetchCategory 2

【问题讨论】:

    标签: iphone core-data nsfetchedresultscontroller


    【解决方案1】:

    @Suwitcha Sugthana 在这种情况下,我建议您将来自两个不同实体的数据填充到两个不同的数组中,假设它们是(myArray1 和 myArray2),方法是使 NSFetchRequest 对象不同。然后在像这样的细胞......

    if(indexPath.row<[myArray1 count])
     {
      cell.text=[myArray1 objectAtIndex:indexPath.row];
     }
     else 
      cell.text=[myArray2 objectAtIndex:(indexPath.row-[myArray1 count])]
    
    //myArray1 has data of contact
    //myArray2 has data of catagory
    

    你会通过这个得到你需要的格式............希望这可以帮助你!!!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多