Android – 谷歌地图将相机从位置移动到另一个位置

不久,我想知道如何通过animation将相机从当前位置移动到另一个位置。 这是我的尝试:

mapView.moveCamera(CameraUpdateFactory.newLatLngZoom(targetPos, 3)); mapView.animateCamera(CameraUpdateFactory.zoomTo(5), 2000, null); 

谷歌地图确实将相机从某个位置移动到目标位置。 如何设置它从A移动到目标,哪个A是我可以设置的位置? 提前致谢。

查看maps示例中CameraDemoActivity中的代码。 要去一个位置,你需要有一个CameraPosition。

 static final CameraPosition SYDNEY = new CameraPosition.Builder().target(new LatLng(-33.87365, 151.20689)) .zoom(15.5f) .bearing(0) .tilt(25) .build(); public void onGoToSydney(View view) { changeCamera(CameraUpdateFactory.newCameraPosition(SYDNEY), new CancelableCallback() { @Override public void onFinish() { Toast.makeText(getBaseContext(), "Animation to Sydney complete", Toast.LENGTH_SHORT) .show(); } @Override public void onCancel() { Toast.makeText(getBaseContext(), "Animation to Sydney canceled", Toast.LENGTH_SHORT) .show(); } }); } /** * Change the camera position by moving or animating the camera depending on the state of the * animate toggle button. */ private void changeCamera(CameraUpdate update, CancelableCallback callback) { if (mAnimateToggle.isChecked()) { if (mCustomDurationToggle.isChecked()) { int duration = mCustomDurationBar.getProgress(); // The duration must be strictly positive so we make it at least 1. mMap.animateCamera(update, Math.max(duration, 1), callback); } else { mMap.animateCamera(update, callback); } } else { mMap.moveCamera(update); } }