如何移动android谷歌地图相机,实现匀速和变焦
我找不到移动android谷歌地图相机的方法,它的速度和变焦都是恒定的 例如,如果当前缩放为15,则调用如何移动android谷歌地图相机,实现匀速和变焦,android,animation,camera,zooming,google-maps-android-api-2,Android,Animation,Camera,Zooming,Google Maps Android Api 2,我找不到移动android谷歌地图相机的方法,它的速度和变焦都是恒定的 例如,如果当前缩放为15,则调用 CameraPosition pos= CameraPosition .builder(map.mMap.getCameraPosition()) .target(target) .zoom(15)
CameraPosition pos= CameraPosition
.builder(map.mMap.getCameraPosition())
.target(target)
.zoom(15)
.build();
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(pos), duration * 1000, null);
它修改缩放15->12->15
(中间值取决于距离)
我的目标是显示一个物体以恒定的速度在地图上移动,并始终保持它在地图的中心
试图在对象的值Animator中调用moveCamera,但随后贴图跳转。我需要平滑地移动它使用fused API进行位置更新,并将相机移动到更新的位置
mFusedLocationClient.getLastLocation()
.addOnSuccessListener(MainActivity.this, new OnSuccessListener<android.location.Location>() {
@Override
public void onSuccess(android.location.Location location) {
if(location!=null){
try{
LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude());
Geocoder geocoder = new Geocoder(MainActivity.this, Locale.getDefault());
String addresses = geocoder.getFromLocation(location.getLatitude(),
location.getLongitude(), 1).get(0).getAddressLine(0);
marker_origin = new MarkerOptions().
position(latLng).title(addresses)
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_MAGENTA));
mMap.addMarker(marker_origin);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, 16.0f));
getPlacesData(latLng, "restaurant");
}catch (Exception e){
e.printStackTrace();
}
}
}
});
mFusedLocationClient.getLastLocation()
.addOnSuccessListener(MainActivity.this,新OnSuccessListener