高德地图功能点(1)

常规地图位置经纬度都是通过高德提供的定位获取的,有这么一个需求,不通过地图定位当前设备的位置信息,需要手动在地图上点击获取经纬度和这个点的位置信息,接下来分析下如何实现。

第一步:点击地图图层获取经纬度,首先需要实例化地图图层等相关组件这里就不细说了,然后需要实现OnMapClickListener接口,目的是为了实现对地图图层Map的点击监听,代码中初始化时还需要加上一句;

aMap.setOnMapClickListener(this);

第二部:在实现监听接口后需要重写的OnMaplick方法里获取经纬度信息,如下图:

第三步:现在要获取位置信息了,有人可能会问,经纬度都返回了,为什么位置信息不一起返回呢?难道这个OnMaplick返回的信息里没有经纬度信息?是的,只有经度和纬度,也就是说我们点击了一下只获取了经纬度,那么如何通过经纬度获取位置信息呢?接着往下看;

首先实现OnGeocodeSearchListener接口,这个接口是高德地图搜索模块的,需要先集成搜索模块的相关SDK才能使用

第四步:实现这个接口会重写两个方法onRegeocodeSearched方法和onGeocodeSearched方法,这里我们获取位置信息只需要处理onRegeocodeSearched方法即可,

第五步:声明GeocodeSearch实体类

 

在实例化方法中初始化这个对象,并实例化监听;

第六步:在OnMaplick获取经纬度的方法里调用下图方法传入经纬度信息,然后逆地理编码获取位置信息;

最后一步在onRegeocodeSearched回调方法里获取最终结果位置信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值