У меня есть mapView в моем фрагменте, и я показываю множество контактов на карте.Как повернуть камеру по умолчанию вместо служебного просмотра?
По умолчанию камера находится сверху карты и отображает ее с верхней стороны.
Перетаскивая точку на карте - двумя пальцами - и двигая пальцами вниз, затем наклона камеры.
Я хочу показать свою карту по умолчанию из этого наклонного вида.
Возможно ли это? Благодарю.
=====
Update
Я следующие строки кода, но, кажется, не работает :(
@Override
public void onMapLoaded()
{
if (this.mMap != null)
{
CameraPosition position = new CameraPosition.Builder().tilt(30).build();
this.mMap.animateCamera(CameraUpdateFactory.newCameraPosition(position));
}
// Subclass should override this to implement the feature
}
==========
Для тех, у кого такая же проблема, это мое решение, которое отлично работает.
protected synchronized void animateMapTo(final LatLng pin, final Float zoomLevel, final boolean useAnimation)
{
final GoogleMap map = this.getMap();
if (!this.isSafe() || pin == null || map == null)
{
return;
}
// Set zoomlevel to current level if not set.
final float cameraZoomLevel = zoomLevel == null ? map.getCameraPosition().zoom : zoomLevel;
// Build camera position
CameraPosition position = new CameraPosition.Builder()
.target(pin)
.zoom(cameraZoomLevel)
.bearing(0)
.tilt(45)
.build();
// Stop any animations
map.stopAnimation();
if (useAnimation)
{
map.animateCamera(CameraUpdateFactory.newCameraPosition(position));
// map.animateCamera(CameraUpdateFactory.newLatLngZoom(pin, cameraZoomLevel));
}
else
{
map.moveCamera(CameraUpdateFactory.newCameraPosition(position));
// map.moveCamera(CameraUpdateFactory.newLatLngZoom(pin, cameraZoomLevel));
}
}
Что означает «кажется неработоспособным»? Что именно происходит? – dominicoder
Вы пытаетесь изменить значение угла наклона, а также использовать .zoom() для создания камеры –