安卓百度地图点击回到当前位置

首先现在地图上定义一个按钮,然后开始进行操作。

 LatLng lat = new LatLng(mCurrentLat, mCurrentLon);MapStatus mMapStatus = new MapStatus.Builder().target(lat).zoom(19).build();//定义MapStatusUpdate对象,以便描述地图状态将要发生的变化MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);//改变地图状态mBaiduMap.animateMapStatus(mMapStatusUpdate);

mCurrentLat和mCurrentLon是在自己定义的定位监听函数的实现BDLocationListener的方法中设置的。

   /*** 定位SDK监听函数*/private class MyLocationListenner implements BDLocationListener {@Overridepublic void onReceiveLocation(BDLocation location) {// map view 销毁后不在处理新接收的位置if (location == null || mMapView == null) {return;}mCurrentLat = location.getLatitude();mCurrentLon = location.getLongitude();mCurrentAccracy = location.getRadius();// startBaiduMap();locData = new MyLocationData.Builder().accuracy(location.getRadius())// 此处设置开发者获取到的方向信息,顺时针0-360.direction(mCurrentDirection).latitude(location.getLatitude()).longitude(location.getLongitude()).build();mBaiduMap.setMyLocationData(locData);if (mCurrentLat != 4.9E-324 && mCurrentLon != 4.9E-324) {if (isFirstLoc) {navigateTo(location);isFirstLoc = false;LatLng ll = new LatLng(location.getLatitude(),location.getLongitude());MapStatus.Builder builder = new MapStatus.Builder();builder.target(ll).zoom(19.0f);mBaiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));}}}}

这样就OK了。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部