[英]Force animateCamera to complete animation
我正在尝试迫使相机动画化为缩放级别和坐标,以尽可能准确地描述由LatLng
坐标列表占据的区域。
到目前为止,我有以下内容:
private void focusListOfCoords(Collection<LatLng> coords) {
LatLngBounds.Builder coordsBoundsBuilder = new LatLngBounds.Builder();
for (LatLng coord : coords) {
coordsBoundsBuilder.include(coord);
}
LatLngBounds coordsBounds = coordsBoundsBuilder.build();
CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(coordsBounds, 50);
mMap.animateCamera(cameraUpdate);
}
上面的代码在整个世界上一望无际时,只是将视图稍微平移到以边界的中心点为中心。 它不会放大。
如果我将mMap.animateCamera(cameraUpdate)
替换为mMap.moveCamera(cameraUpdate)
,则投影会更改缩放级别(在每种情况下都太远了,但是在该点附近)并按预期居中。
在尝试解决此问题之后,我注意到如果为animateCamera
方法实现CancelableCallback
,则可以看到动画已被取消。
有没有办法强迫动画完成? 如果不是,我如何找出动画被取消的原因?
编辑 :可以在以下问题中找到解决方案: 具有CameraUpdateFactory.newCameraPosition的Android- animateCamera无法缩放
总而言之,我正在调用动画的侦听器方法返回false,这取消了动画。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.