我设法在地图上显示当前位置的标记,每次我移动相机都跟着我。我每1000毫秒得到一个设备当前位置,如下所示:
LatLng startPosition
当我在车内使用我的应用程序时,我当前的位置更新不像谷歌地图应用程序那样动画,是从一个点跳到另一个点。
当前位置发生变化时,如何获得平滑动画?我对使用LatLng destination
和private void moveCamera(LatLng latLng, float zoom) {
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, zoom));
}
的方法不感兴趣,我只想在移动时获得良好的用户体验。
这个帮我移动相机的方法:
{{1}}
答案 0 :(得分:0)
请尝试使用以下代码为相机设置动画:
CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, zoom);
if(mMap != null) {
mMap.animateCamera(cameraUpdate);
}
答案 1 :(得分:0)
试试这个方法
mMap.setOnCameraIdleListener(new GoogleMap.OnCameraIdleListener() {
@Override
public void onCameraIdle() {
CameraPosition position = mMap.getCameraPosition();
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(mCurrentLatitude, mCurrentLongitude), 12.0f));
}
});