离点最近的 CloudKit 位置

Posted

技术标签:

【中文标题】离点最近的 CloudKit 位置【英文标题】:CloudKit locations closest to point 【发布时间】:2015-06-28 10:40:41 【问题描述】:

我正在寻找一个 CloudKit 查询,它可以返回我的位置最近的对象,按距离排序。现在我可以得到离我的点一定距离内的位置。

NSPredicate(format: "distanceToLocation:fromLocation:(%K,%@) < %f","Location",location,radiusInKilometers)

但这不是我需要的。我正在寻找的是从最近的位置排序的位置,对我来说半径无关紧要,因此使用此查询然后在我的设备上对结果进行排序的解决方案对我不利。有什么帮助吗?

【问题讨论】:

【参考方案1】:

您可以在 sortDescriptors 中使用 CKLocationSortDescriptor 并将其与 resultsLimit 结合使用。这将让您按最接近您提供的点的位置进行排序,并获得特定数量的结果(例如 5 个)。

queryOperation.sortDescriptors = [CKLocationSortDescriptor(key: "location", relativeLocation: location)]
queryOperation.resultsLimit = 5

【讨论】:

以上是关于离点最近的 CloudKit 位置的主要内容,如果未能解决你的问题,请参考以下文章

从当前 iCloud 用户获取 CloudKit 记录

快速从 Cloudkit 中删除 CKRecord

CloudKit:删除记录的 CKQueryOperation

CloudKit 离线存储

如何使用查询快速获取 cloudkit 数据

CloudKit 记录保存进度