Ale*_*lex 5 iphone cocoa cocoa-touch core-data
我有一个 Core Data iPhone 应用程序,可以显示Subscription
其中任何items
不存在的实体read
。换句话说,我构建了一个这样的谓词:
[NSPredicate predicateWithFormat:@"ANY items.read == NO"]
Run Code Online (Sandbox Code Playgroud)
Subscription
虽然这适用于初始获取,但当我修改 时它不会影响实体Item
,因此NSFetchedResultsController
永远不会重新评估Subscription
实体。什么是更好的构造方法,以便在设置Subscription
项目的属性时更新实体?read
我确实尝试unreadCount
在 上创建一个属性Subscription
并使用keyPathsForValuesAffectingUnreadCount
它返回包含items.read
. 我没想到这会起作用,而且没有。我收到一个异常,_NSFaultingMutableSet
告诉我该read
密钥不受支持。
我看到两个解决方案:
您可以获取名为“aSubscription”的订阅的未读项目集,如下所示:
NSPredicate *pred = [NSPredicate predicateWithFormat:@"read == NO"];
NSSet *unreadItems = [aSubscription.items filteredSetUsingPredicate:pred];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2479 次 |
最近记录: |