如何按类名获取iOS核心数据

时间:2012-12-13 07:01:42

标签: ios core-data

我有一个iOS项目,我正在尝试使用CoreData。

在我的模型中,我有两个继承自ChildA的班级ChildBParentClass

在我的UITableViewController中,我可以轻松获取所有对象:

NSEntityDescription *entity = [NSEntityDescription entityForName:@"ParentClass" inManagedObjectContext:self.managedObjectContext];

我现在要做的是按Classname对结果进行分组。但我不知道如何在我的NSFetchedResultsController中为param sectionNameKeyPath

实现这一目标

NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:@"?????" cacheName:@"Master"];

我想在UITableView中使用的结果应该类似于

ChildA
   Obj1
   Obj2
   Obj3
   ...
ChildB
   Obj4
   Obj5
   Obj6
   ...

提前致谢

1 个答案:

答案 0 :(得分:0)

我找到了实现这个目标的可行方法......

我在NSFetchedResultsController

中宣布了两个UITableViewController
@interface MMPOITableViewController : UITableViewController <NSFetchedResultsControllerDelegate>
@property (strong, nonatomic) NSFetchedResultsController *childAFetchedResultsController;
@property (strong, nonatomic) NSFetchedResultsController *childBFetchedResultsController;
@end

第一个负责管理类ChildA的对象,第二个负责管理类ChildB的对象。

然后我设法使用childAFetchedResultsControllerchildBFetchedResultsController取决于当前部分。

希望它能帮助别人;)