关于最新百度地图sdk如何使覆盖物固定在屏幕(MapView)中心

关于最新百度地图sdk如何使覆盖物固定在屏幕中心


  最近为了完成课程设计,接触了百度地图API,我现在用的版本是Android地图sdk v3.3.0,也是目前的最新发布了,相对于之前的版本还是有挺大的改进


先说说需求:我是想将覆盖物固定在MapView中央,当我们拖拽地图的时候,覆盖物不动,获取覆盖物指向的地理坐标


微信的发送位置功能,它也是有一个覆盖物一直固定在屏幕的中心,我估计腾讯的做法和我的差不多,步骤如下


1、首先,在布局文件中,把覆盖物以一个普通的Android 中的组件添加到MapView组件的中央(我这里选择ImageView),也就是覆盖在MapView的中央位置,代码如下:

   


      这样,覆盖物和我们的地图就Mark和地图那样的关系,不管我们怎么拖拽地图,覆盖物(ImageView里面的图片)都不会移动


2、我们希望通过覆盖物获取覆盖物指示的地理坐标,也就是经纬度

I   我们定位的时候,百度地图默认把我们的位置放置到MapView中央,此时,定位坐标将会和我们上面布局的覆盖物重叠,这本来就是我们想要的

II 百度地图SDK(Android)中有Projection类,它有函数如下

  


  其中有函数是将【地理坐标转换成屏幕坐标】,我们可以通过这个函数经定位获取的地理坐标转换成屏幕坐标(因为此时的定位地理坐标和MapView中心坐标重合)

所以当我们希望随时获取覆盖物指示的地理坐标是,可以通过函数【将屏幕坐标转换成地理坐标】


很简单,但是不清楚的情况下真的很难,要认真通过查找API寻找答案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值