我正在尝试改进iPhone的ToDo应用程序。
我有两个实体,1。任务2.项目
项目可以有多个任务,但任务可能没有任何项目或一个项目。
我一直在尝试使用NSFetchedResultsController在同一个UITableView中显示它们
是否可以从同一个UITableView获取两个实体并对它们进行显示/排序?
答案 0 :(得分:1)
我不确定我完全理解,但您是否尝试在同一个UITableView中显示项目和任务?
在我的头脑中,我会说你想制作一个抽象的实体,“可显示”或类似的东西,并使其成为你的任务和项目实体的父级。 (假设它们在TableView中显示相同的内容)。然后获取所有这些,你将获得完整的结果集。
请注意,我自己没有尝试过,但理论上它应该做你想要的。
或者,如果这不是一个选项,你可以使用两个NSFetchedResultsControllers,每个实体一个,只需在你的rowForIndexPath :(或其他)方法中添加一些花哨的条件代码。但是,排序可能是个问题。
答案 1 :(得分:0)
您如何在Core Data中建模数据?我原以为你应该有一个Project实体,它通过双向关系拥有一个或多个Task实体。
然后,您可以拥有一个NSFetchedResults控制器来获取所有任务。任务实体将有一个项目成员,我或者可能不是。
在您的表格中,您可以显示任务列表及其详细信息以及项目详情。
任务1 - 购物 项目: 家
任务2 - 进行清洁 项目: 家
等等
答案 2 :(得分:0)
您需要一个两者都共有的抽象实体。这也可以让你定义一个属性,以便对各个部分进行排序。