【问题标题】:LatLngBounds with CameraUpdate not zooming in带有 CameraUpdate 的 LatLngBounds 未放大
【发布时间】:2017-10-25 09:15:27
【问题描述】:

我有一个已正确初始化的 GoogleMap(精简模式)对象。它与单个标记一起正常工作,并使用带有 newLatLngZoom 的 CameraUpdate 聚焦于正确的区域。

但是,当涉及到添加两个标记并使用 LatLngBounds 让地图同时显示这两个标记时,一切都会变得很糟糕。地图被缩小到显示整个大陆,两个标记彼此重叠(以及折线)。

请假设取件和目的地的数据是正确的

这是我的代码:

googleMap.addMarker(new MarkerOptions()
                    .position(pickup)
                    .title(job.getPickupAddress()));

            googleMap.addMarker(new MarkerOptions()
                    .position(destination)
                    .title(job.getDestinationAddress())
                    .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE)));

            CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(new LatLngBounds.Builder().include(pickup).include(destination).build(), 0);
            googleMap.moveCamera(cameraUpdate);

            String pickupLatLng = job.getPickupLatLong().latitude + "," + job.getPickupLatLong().longitude;
            String destinationLatLng = job.getDestinationLatLong().latitude + "," + job.getDestinationLatLong().longitude;
            plotPolyLines(pickupLatLng, destinationLatLng);

输出:

【问题讨论】:

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


    【解决方案1】:

    使用 latlng 边界设置缩放并不是适用于所有用例的有效解决方案。

    可能是一个相关的错误Maps Lite mode with incorrect zoom level first time app starts

    尝试此处列出的一些解决方案/技巧:https://issuetracker.google.com/issues/36218443

    就像通过破坏和重建来刷新地图

    如果地图设置为正确的缩放级别,还检查是否使用带有边界构建器的单个标记

    最后一件事确保没有应用缩放级别限制。

    【讨论】:

      【解决方案2】:

      尝试换行

      googleMap.moveCamera(cameraUpdate);
      

      googleMap.moveCamera( CameraUpdateFactory.newLatLngZoom(new LatLng(xxxx,xxxx) , 14.0f) );
      

      How do I set default location and Zoom level for google map api v2? 中所建议的那样 或使用

       map.animateCamera(CameraUpdateFactory.zoomTo(15),  2000, null);
      

      这应该会使相机更靠近您的标记。

      【讨论】:

      • 但这不会使相机在两个标记上居中。使用边界的全部意义在于两个标记都可以在视图中。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-26
      • 2013-08-27
      • 1970-01-01
      • 2023-03-24
      相关资源
      最近更新 更多