如何在不使用onLocationChanged的情况下将相机设置为当前位置(蓝点)的动画(移动)。
答案 0 :(得分:1)
这实际上是评论和答案之间的界限,但我认为你可以通过使用活动级别布尔标志来获得所需的行为。最初,此标志将设置为true。如果为true,则会为Google地图设置动画。否则,你不会动画。像这样:
public class MapsActivity extends FragmentActivity
implements OnMapReadyCallback, LocationListener {
private GoogleMap googleMap;
private boolean firstRender = true;
@Override
public void onLocationChanged(Location location) {
CameraUpdate current = CameraUpdateFactory.newLatLngZoom(coordinates,15);
if (firstRender) {
googleMap.animateCamera(current);
firstRender = false;
}
else {
googleMap.moveCamera(current);
}
}
}
答案 1 :(得分:0)
只需移动你的相机而不是animateCamera onMapReady:mGoogleMap.moveCamera(CameraUpdateFactory.newCameraPosition(ur location))
答案 2 :(得分:-1)
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Add a marker in Sydney, Australia, and move the camera.
LatLng chennai = new LatLng(new GPSTracker(activity).getLatitude(), new GPSTracker(activity).getLongitude());
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(chennai, 12));
mMap.addMarker(new MarkerOptions().position(chennai).title("Marker in chennai"));
}