定制nspredicate在两个距离之间

时间:2017-08-25 23:07:40

标签: ios swift nspredicate

有没有办法将我的谓词缩小到两个距离之间?目前,我所能创建的是一个谓词,它采用一个单一的半径,并从用户的当前位置查找该半径内的所有对象。

var locationPredicate = NSPredicate(format: "distanceToLocation:fromLocation:(%K, %@) < %f", "Location", location,
                                        1000)

对于直观表示,我想要抓住此绘图的橙色部分中的所有对象,其中心是用户的当前位置。 (我现在只能得到黄色和橙色)。 enter image description here

1 个答案:

答案 0 :(得分:1)

您应该能够使用BETWEEN声明:

NSPredicate(format: "distanceToLocation:fromLocation:(%K, %@) BETWEEN { %f , %f }", "Location", location, lowerBound, upperBound)