CLLocation列表中的地点/城市名称

尼宾五世

这是我的情况。(使用Swift 2.2)

我有一个坐标列表(CLLocation)。我需要调用reverseGeocodeLocation来获取相应的地方/城市。如果我尝试遍历所有元素,则可能会出现一些呼叫失败的情况,因为苹果建议每秒发送一次呼叫。因此,我还需要在每个调用之间添加一个延迟。

有什么办法可以做到这一点?任何帮助表示赞赏。

(如果我们有多个具有相同经度的项目,那么长我们只调用一次api)

乔什·霍曼(Josh Homann)

这段代码声明了一组位置,并一个接一个地查找它们,两次请求之间的间隔至少为1秒:

    var locations = Set<CLLocation>()

    func reverseGeocodeLocation() {
        guard let location = locations.popFirst() else {
            geocodingDone()
            return
        }
        CLGeocoder().reverseGeocodeLocation(location) { placemarks, error in
            //Do stuff here
            //Dispatch the next request in 1 second
            _ = Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
                self.reverseGeocodeLocation()
            }
        }
    }

    func geocodingDone() {
        //Put your finish logic in here
    }

仅供参考,我为Timer使用了块语法,但是仅在iOS 10上有效。如果您使用的是iOS 9或更早版本,请使用选择器版本,其工作方式相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

选择地点后,如何在自动完成的地理区域输入中仅显示城市名称?

从PlaceAutoComplete中搜索城市名称会得到加密的城市名称

SQL查询以查找不以元音开头的城市名称列表

用户如何更改此请求中的城市名称

用JSON中的城市名称替换段落

距离矩阵API中的波斯城市名称

从Android中的坐标获取(仅)城市名称

从坐标获取城市名称

如何从同一张表中查询城市名称以及最小城市名称的长度

按城市名称分组,并且仅在第一行中显示一次相同的城市名称

将坐标转换为城市名称?

显示分行最多的城市名称

交叉引用街道和城市名称

城市名称作为列标题

返回人口最多的城市名称

如何从位置更改城市名称语言?

从城市名称获取地理位置

如何在Java中从城市名称中找到国家名称?

在Swift中从经纬度中查找城市名称和国家

从Postgres中存储的OSM数据中按纬度和经度获取城市名称

通过熊猫数据框中的纬度/经度值分配城市名称

如何在Android中通过纬度和经度获取城市名称?

在Google地图反向地理编码中获取明确的城市名称

使用正则表达式从城市名称中删除代码

如何在Google Autocomplete iOS中仅获取印度城市名称?

为什么 Google Maps API 结果中某些位置缺少城市名称?

如何在Django中获得仅属于某个国家的城市名称?

R Studio中根据不同城市名称的条件和

用于在地址中的城市名称前放置逗号的正则表达式