Swift / Cloudkit 谓词格式

Swift / Cloudkit predicate format

我正在尝试使用存储在 CloudKit 数据库中的坐标编写谓词。我正在努力寻找有关格式化它的任何准确文档。这是我想出的:

NSPredicate(format: "distanceToLocation:fromLocation: (%K,%@) < 1000", "locationcoordinates")

我收到以下错误:

由于未捕获的异常 'CKException',正在终止应用程序,原因:'Expected CLLocation argument for distanceToLocation:fromLocation:'

谁能帮我纠正这个谓词?我不确定我需要添加什么参数。

在您的谓词中,您有 2 个参数。 %K 和 %@ 但只提供 1 个值。

应该是这样的

    var location:CLLocation = CLLocation(latitude: 0, longitude: 0)
    var radiusInKilometers:CGFloat = 1000;
    var predicate: NSPredicate = NSPredicate(format: "distanceToLocation:fromLocation:(location, %@) < %f", location, radiusInKilometers)!