Android百度地图对添加的覆盖物怎样实现可以跟着手机一样旋转

Android百度地图对添加的覆盖物怎样实现可以跟着手机一样旋转,第1张

/**

* 初始化方向传感器

*/

private void initOritationListener() {

myOrientationListener = new MyOrientationListener(

getApplicationContext())

myOrientationListener

.setOnOrientationListener(new OnOrientationListener() {

@Override

public void onOrientationChanged(float x) {

mXDirection = (int) x

if (marker != null) {

marker.remove()

}

//定义Maker坐标点

LatLng point = new LatLng(39.963175, 116.400244)

//构建Marker图标

BitmapDescriptor bitmap = BitmapDescriptorFactory

.fromResource(R.drawable.icon_marka)

//构建MarkerOption,用于在地图上添加Marker

OverlayOptions option = new MarkerOptions()

.position(point)

.icon(bitmap)

//在地图上添加Marker,并显示

marker = (Marker) (mBaiduMap.addOverlay(option))

marker.setRotate(x) //实现覆盖物偏转 x为偏转的角度

Bundle bundle = new Bundle()

marker.setExtraInfo(bundle)

}

})

}

在方向传感器中onOrientationChanged(float x) 中 得到标记物marker 给marker设置setRotate(偏移量--x)

还要把上一次的marker清空,要不会出现很多

新建一个OverlayItem , 调用它的setMarker给它传个图片,再用ItemizedOverlay.addItem()把新建的OverlayItem加进去,最后刷新一下地图就可以了。你可以看看官方Demo中的ItemizedOverlayDemo .


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/7888617.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存