我有 2400 条记录添加到 CloudKit 我想知道是否有办法以分页方式获取数据。
这是我用于返回记录的代码。这有效,但仅返回 100 个结果。
CKQuery * playerQuery = [[CKQuery alloc] initWithRecordType:@"Player" predicate:[NSPredicate predicateWithFormat:@"TRUEPREDICATE"]];
有没有办法改变谓词从哪里开始?我也尝试使用@count。
我有 2400 条记录添加到 CloudKit 我想知道是否有办法以分页方式获取数据。
这是我用于返回记录的代码。这有效,但仅返回 100 个结果。
CKQuery * playerQuery = [[CKQuery alloc] initWithRecordType:@"Player" predicate:[NSPredicate predicateWithFormat:@"TRUEPREDICATE"]];
有没有办法改变谓词从哪里开始?我也尝试使用@count。
The property resultsLimit
is not in CKQuery
, it's in CKQueryOperation
. For more see this topic.
CKQuery 有一个属性 resultsLimit。如果您不设置,则 CloudKit 将控制将返回多少条记录。该计数可能会因 iCloud 上的当前负载而异。只需将其设置为您的页面值。然后在 queryCompletionBlock 中检查是否有游标返回,以便您可以获取下一页。