MoveCamera и animateCamera не работают во второй раз

У меня есть следующий способ обновления моей карты:

private void setCamera() { if (currentLocation != null) { String[] coords = currentLocation.split(",", 2); CameraUpdate center = CameraUpdateFactory.newLatLng(new LatLng(Double.parseDouble(coords[0]), Double.parseDouble(coords[1]))); CameraUpdate zoom = CameraUpdateFactory.zoomTo(5); mMap.moveCamera(center); mMap.animateCamera(zoom); } } 

В первый раз я вызываю этот метод сразу после открытия приложения, и этот метод работает нормально. Но после этого я перехожу к другому фрагменту, а затем к первому фрагменту снова. И в этом случае метод был вызван, currentLocation не равнялся нулю, center получил нужный объект LatLng , но мой вид карты не изменился, а масштаб меньше 5. Что не так?

В конце концов я решил эту проблему. Я изменил предыдущий код следующим образом:

 private void setCamera() { if (currentLocation != null) { String[] coords = currentLocation.split(",", 2); CameraUpdate center = CameraUpdateFactory.newLatLng(new LatLng(Double.parseDouble(coords[0]), Double.parseDouble(coords[1]))); CameraUpdate zoom = CameraUpdateFactory.zoomTo(5); mapFragment.getMap().moveCamera(center); mapFragment.getMap().animateCamera(zoom); } } в private void setCamera() { if (currentLocation != null) { String[] coords = currentLocation.split(",", 2); CameraUpdate center = CameraUpdateFactory.newLatLng(new LatLng(Double.parseDouble(coords[0]), Double.parseDouble(coords[1]))); CameraUpdate zoom = CameraUpdateFactory.zoomTo(5); mapFragment.getMap().moveCamera(center); mapFragment.getMap().animateCamera(zoom); } } 

И теперь карта отображается правильно.