gpt4 book ai didi

SWIFT Realm.io 按距离过滤

转载 作者:行者123 更新时间:2023-11-30 10:04:50 26 4
gpt4 key购买 nike

我正在尝试对包含 LAT 和 LNG 的 Realm 对象实现过滤。过滤器将采用我当前的位置并对数据源进行排序以呈现最接近的对象到最少的对象。我尝试用 GeoQueries 解决这个问题! pod,但它不断返回 err:

'Expected object of type string for property 'lat' on object of type 'E21', but received: 53.48708'

我的代码:

var datasourceE21Distance:Results<E21>!

func loadDistanceDb() {
do{
let tempLat = Double(LocationManager.sharedInstance.latitude)
let tampLng = Double(LocationManager.sharedInstance.longtitude)


let realm = try Realm()
datasourceE21Distance = realm.findInRegion(E21.self, region: mapView.region)

print(datasourceE21Distance)

} catch let error as NSError {
print(error)
}
}

最佳答案

GeoQueries 期望地理坐标组件的属性默认命名为 latlng,并且类型为 DoubleFloat .

从错误消息来看,您的属性似乎是 String 类型。 Realm 无法使用数字比较来查询这些。

如果您为属性使用其他名称,则必须通过传递给库定义的方法的可选参数来指定这些名称。

realm.findInRegion(E21.self, region: mapView.region
latitudeKey: "latitude",
longitudeKey: "longitude"
)

关于SWIFT Realm.io 按距离过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36604109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com