谷歌地图AnimateCamera第二次没有工作

时间:2017-07-12 10:04:14

标签: android google-maps android-maps-v2

我正在努力使用Google地图的animateCamera()方法。它仅适用于首次启动活动,如果活动被销毁并再次创建,则相机动画不起作用,但地图加载正常。我已经尝试调试代码,一切都被执行但是地图没有动画而没有任何错误或日志。虽然动画在片段中使用相同的mapFragment时有效,但在活动中它似乎无效。

this question中提到的解决方案现已弃用,我无法解决此问题。

地图片段

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
                mapFragment.getMapAsync(this);
                mapFragment.setRetainInstance(true);
@Override
public void onMapReady(GoogleMap googleMap) {
     if (mMap == null) mMap = googleMap;
}

动画相机代码

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, ZOOM_LEVEL));

1 个答案:

答案 0 :(得分:0)

从旧代码重新制作整个项目解决了这个问题。但是这个问题在另一个应用程序中重新出现。我发现该应用程序使用旧引用mMap。这可以通过从片段管理器获取引用或仅在活动被销毁时设置mMap = null来解决。