Android - Google Maps API v2标记图标超出范围

时间:2014-08-26 14:28:58

标签: android google-maps google-maps-markers

实际上我正在使用谷歌地图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);

这非常合适,但它只有一个问题,那就是:我当前的相机缩放级别仅包括标记点,但标记图标本身通常是全部或部分超出范围。

marker icon partially out of the camera view

关于我应该做什么的任何建议我可以在相机视图中包含标记图标吗?

2 个答案:

答案 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