如何将PolyLine Fit设置为我们的Google Map Fragment

Dar*_*tri 5 android google-maps google-maps-android-api-2

我的折线走出焦点.我正在使用 map.moveCamera(CameraUpdateFactory.newLatLngZoom(route.startLocation, 10)); 但这不是解决方案.如何解决这个问题

在此输入图像描述

ama*_*Bit 9

要解决您的问题,首先要了解谷歌地图相机的工作原理.当你这样做时:

map.moveCamera(CameraUpdateFactory.newLatLngZoom(route.startLocation, 10));
Run Code Online (Sandbox Code Playgroud)

相机将起始位置对焦于中间,10为缩放级别.我们需要的是集中路线.为此,我们需要使用latLng边界.一旦我们创建了一个包含两个或更多latLng的边界,我们就可以将它设置为地图的相机.这样,您的路线对您的用户可见.

创建包含路线上所有开始和结束标记的边界:

LatLngBounds.Builder builder = new LatLngBounds.Builder();
builder.include(startMarker);
builder.include(endMarker);
LatLngBounds bounds = builder.build();
Run Code Online (Sandbox Code Playgroud)

然后使用工厂获取运动描述对象CameraUpdateFactory::

int padding = 0; // padding around start and end marker
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, padding);
googleMap.animateCamera(cu);
Run Code Online (Sandbox Code Playgroud)