小编Cpp*_*ase的帖子

来自私有区域的CKQuery仅返回CloudKit中的前100个CKRecords

Cloudkit私有默认区域的查询结果是否有任何限制?我不知道为什么我只使用以下查询收到前100条记录:

let p = NSPredicate(format: "(type == 'entered') AND (timestamp >= %@) AND (timestamp <= %@)", from, to)
let q = CKQuery(recordType: self.beaconRecordType, predicate: p)
q.sortDescriptors = [NSSortDescriptor(key: "timestamp", ascending: true)]
self.privateDatabase?.performQuery(q, inZoneWithID: nil, completionHandler: { results, error in

    //count = 100
    println(results.count)

}
Run Code Online (Sandbox Code Playgroud)

好的.正如Edwin在答案中提到的,解决方案是使用CKQueryOperation获取初始数据块,然后使用completionBlock中的"cursor"来触发另一个操作.这是一个例子:

UPDATE

func fetchBeacons(from:NSDate, to:NSDate) {

    let p = NSPredicate(value: true)
    let q = CKQuery(recordType: self.beaconRecordType, predicate: p)

    let queryOperation = CKQueryOperation(query: q)

    queryOperation.recordFetchedBlock = fetchedARecord

    queryOperation.queryCompletionBlock = { [weak self] (cursor : CKQueryCursor!, …
Run Code Online (Sandbox Code Playgroud)

nspredicate ios swift cloudkit ckquery

11
推荐指数
2
解决办法
4424
查看次数

使用UIRefreshControl的水平UICollectionView

我有一个自定义水平集合视图,有1行,我想添加拉动刷新功能,默认情况下,它出现在我的单元格行上方.我希望用户能够从左到右拉动集合视图以激活UIRefreshControl.有任何想法吗?

提前致谢.

uikit ios uicollectionview uirefreshcontrol pull-to-refresh

5
推荐指数
2
解决办法
3541
查看次数

NSString是等同的奇怪的bug

我有一个Web服务器,我曾经在我的iOS应用程序中获取一些数据.数据包括一个字段,itemId比如说'48501'(没有引用).我阅读商品JSON数据到我itemObject在其中itemId被定义为NSString,而不是一个NSInteger.

一切都有效,直到这一点,但我有问题,我想itemObject.itemIdisEqual:功能与另一个NSString填充的功能进行比较48501.

换句话说,两个字符串完全相同,并48501在我打印时包含.没有空间和隐藏的东西.全部isEqual:isEqualToString:并且==在比较时报告错误.

当我转换NSStringsNSIntegers并比较它时它起作用但并非总是如此!有时TRUECRASH没有错误捕获,只是指向该行!我看到它们打印完全相同,但if语句没有通过.

我向那些经验丰富的人展示了代码,他觉得这可能是一个错误!有没有人接触过这个?

json objective-c nsstring

0
推荐指数
1
解决办法
127
查看次数