按键值过滤 CKQuery
Posted
技术标签:
【中文标题】按键值过滤 CKQuery【英文标题】:Filter CKQuery by key value 【发布时间】:2014-07-21 13:52:05 【问题描述】:我的场景: 我在公共数据库中有一个特定记录类型的记录列表。当有人按下按钮时,我只想显示“示例”键中包含值“1”的记录。知道如何在创建 CKRecords 数组时执行此操作吗?这就是我目前构建数组的方式:
- (void)queryCloudKit
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"NewArticle"
predicate:[NSPredicate predicateWithValue:YES]];
query.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"Date" ascending:NO]];
[self.publicDatabase performQuery:query
inZoneWithID:nil
completionHandler:^(NSArray *results, NSError *error)
if (!error)
// CK convenience methods completion
// arent executed on the callers thread.
// more info: http://openradar.appspot.com/radar?id=5534800471392256
@synchronized(self)
self.results = [results mutableCopy];
// make sure it executes on main thread
dispatch_async(dispatch_get_main_queue(), ^
[self.collectionView reloadData];
);
else
NSLog(@"FETCH ERROR: %@", error);
];
谢谢!
【问题讨论】:
【参考方案1】:你可以试试
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"NewArticle" 谓词:[NSPredicate predicateWithFormat:@"Example == 1"]];
NSPredicate Programming Guide
【讨论】:
以上是关于按键值过滤 CKQuery的主要内容,如果未能解决你的问题,请参考以下文章
CKQuery 的 distanceToLocation 上没有 NSSortDescriptor?