objective-c - 核心数据 : How to fetch a specific object using a predicate

标签 objective-c iphone core-data

情况:

我从我的 sqllite 核心数据数据库中获取一个完整的表,并将其显示在 TableView 中,如下所示:

NSEntityDescription *entity = [NSEntityDescription entityForName:@"MyTable"
                                          inManagedObjectContext:managedObjectContext];

挑战:

如何获取 EntryID 并从数据库中获取特定条目(例如,如果我单击一个条目)?我认为这是正确的方向?

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"(id = %@)", myEntryID];

最佳答案

如果你有一个名为 entry 的入口对象,它会是这样一个谓词:

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"(SELF = %@)", entry];

大致相当于

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"(objectID = %@)", entry.objectID];

对于 NSManagedObjectID,您会得到如下内容:

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"(objectID = %@)", myEntryID];

关于objective-c - 核心数据 : How to fetch a specific object using a predicate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2306137/

相关文章:

objective-c - 区分实例和类

ios - 如何在 tableView 中编辑行并保存 coreData 中的更改?

ios - Swift 3-“NSPersistentContainer仅在ios 10和更高版本上可用”

iphone - iOS应用程序i18n,使用类似Rails的按键样式?

iphone - 如何在Objective-C中使用局部静态对象?

iphone - Iphone 上的自定义字体问题

ios - NSSortDescriptor与Comparator使用实际对象而不是键值

ios - 如何叠加相机捕获的图像?

ios - UIScreenEdgePanGestureRecognizer 无法处理方向更改?

objective-c - Cocoa NSRect 位于交叉点之外