百度地图 - Android所有Marker点显示在屏幕内

需求:

把百度地图采集在数据库中所有的Marker点自动缩放,放在屏幕内!

注意:

1、必须在setOnMapLoadedCallback中调用缩放代码

2、必须再次调用下面一段代码,否则还是不成功:

MapStatusUpdate msu = MapStatusUpdateFactory.zoomBy(-0.8f);
mBaiduMap.setMapStatus(msu);

整体代码:

        //调整缩放级别:将所有marker显示在屏幕内
        mBaiduMap.setOnMapLoadedCallback(new BaiduMap.OnMapLoadedCallback() {
            @Override
            public void onMapLoaded() {
                //设置多有点在一个屏幕里面
                LatLngBounds.Builder builder = new LatLngBounds.Builder();
                for (LatLng latLng : polylineOptions) {
                    builder.include(latLng);
                }
                MapStatusUpdate mapStatusUpdate = MapStatusUpdateFactory.newLatLngBounds(builder.build());
                mBaiduMap.setMapStatus(mapStatusUpdate);
                MapStatusUpdate msu = MapStatusUpdateFactory.zoomBy(-0.8f);
                mBaiduMap.setMapStatus(msu);
            }
        });

 

你可能感兴趣的:(【,Android,开源框架,】)