Android 高德地图界面中全览我需要的坐标信息
由于地图界面中添加比较多的人员,我想要看全部人员所在界面的各个位置。这个时候就有了全览功能。表示查看界面所有人员的位置,在一个界面内显示完整。
首先获取所有用户的坐标点,包括自己在内
/**
* 获取所有点的集合
*/
private void setAllLatLng(){
if (mAllLatLng == null){
mAllLatLng = new ArrayList<>();
}
// 添加我的位置
mAllLatLng.add(new LatLng(Constants.mLatitude,Constants.mLongitude));
// 将所有的点显示到地图界面上
setMapBounds(mAllLatLng);
}
然后将所有的点设置给地图
/**
* include marker show zoom
*/
private void setMapBounds(List<LatLng> LatLngs) {
LatLngBounds.Builder latlngBuilder = LatLngBounds.builder();
for (LatLng latLng : LatLngs) { // 将所有的点都放到latlngBuilder中
latlngBuilder.include(latLng);
}
LatLngBounds bounds = latlngBuilder.build();
mAmap.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 40)); // 地图显示包含全部的点 40 表示padding=40,如果你想让你的marker布局全部显示出来就需要考虑到marker的高度来设置padding值
}
这样就可以看到全部的点都在界面界面中。
高德地图小知识。共勉