实际上我正在使用谷歌地图APIv2开发Android应用程序,到目前为止我试图在地图上显示一些标记,我也希望在我的相机视图中包含所有标记,为此,我使用
LatLngBounds.Builder builder = new LatLngBounds.Builder();
LatLngBounds bounds;
int padding = 0;
//markMap is a hashmap populated with my markers positions.
HashMap<String, LatLng> markMap = new HashMap<String, LatLng>();
for (Entry<String, LatLng> entry : markMap.entrySet())
{
map.addMarker(new MarkerOptions().position(entry.getValue()));
builder.include(entry.getValue());
}
bounds = builder.build();
CameraUpdate update = CameraUpdateFactory.newLatLngBounds(bounds, padding);
map.animateCamera(update);
这非常合适,但它只有一个问题,那就是:我当前的相机缩放级别仅包括标记点,但标记图标本身通常是全部或部分超出范围。
关于我应该做什么的任何建议我可以在相机视图中包含标记图标吗?
答案 0 :(得分:0)
为什么不添加一些填充:
CameraUpdate update = CameraUpdateFactory.newLatLngBounds(bounds, 50);
我不明白为什么CameraUpdate应该考虑标记本身的宽度。它包括坐标而不是标记本身。
答案 1 :(得分:0)
另一种选择可能是:
CameraPosition cameraPosition =
new CameraPosition.Builder().target(ll).zoom(16).build();
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
您可以详细了解“相机位置”here