Kamerayı ayarlama

Kamera, kullanıcının haritaya bakma açısını değiştirmenize olanak tanır. Navigasyon sırasında harita görünümünün davranışını kontrol etmek için kamera modlarını kullanabilirsiniz. Kamera modunu ayarlamak için kamerayla ilişkili aşağıdaki yöntemlerden birini çağırın:

  • Konumumu takip et (GoogleMap.followMyLocation): Navigasyon için varsayılan kamera modu. Bu modda kamera, cihaza veya araca ayarlanır. Navigasyon sırasında kamera, hareket yönüne otomatik olarak döner.

  • Konuma sabitlendi (GoogleMap.animateCamera ve GoogleMap.moveCamera): — Kamerayı belirli bir konuma sabitler. Bu modu kullanırken kamera konumunu, yön, eğme, yakınlaştırma gibi diğer kamera özellikleriyle birlikte ayarlayabilirsiniz. Bu görünüm seçildiğinde ve Gezgin başlatıldığında Yeniden merkezle düğmesi görünür.

  • Rotaya genel bakışı göster (NavigationView.showRouteOverview veya SupportNavigationFragment.showRouteOverview): Rotanın harita görünümüne sığması için gerektiğinde kaydırarak ve yakınlaştırarak kalan rotaya (sonraki 45 dakikalık sürüş süresine kadar) genel bir bakış gösterir. Bu görünüm seçildiğinde Yeniden ortala düğmesi görünür.

Yeniden merkezle düğmesini tıkladığınızda kamera followMyLocation moduna ayarlanır.

Konumumu takip et modu

En yaygın kamera ayarı, kameranın cihaza veya araca ayarlanması ve yolculuktaki mevcut konumunu göstermesidir. Bu kamera modunda, aracın her zaman ekranın üst kısmına doğru baktığı açılı bir perspektifle (CameraPerspective.TILTED) rotayı görüntüleyebilir veya aracın kuzeye (CameraPerspective.TOP_DOWN_NORTH_UP) ya da yöne (CameraPerspective.TOP_DOWN_HEADING_UP) her zaman ekranın üst kısmında) doğru gittiğini görebilirsiniz.

Aşağıdaki kod parçasında TILTED perspektifi kullanılmaktadır:

// Set the camera to follow the device (vehicle):
mNavFragment.getMapAsync(googleMap -> googleMap.followMyLocation(CameraPerspective.TILTED))

Konum moduna sabitlendi

Pinned modu, kamera üzerinde en fazla kontrolü sağlar. Bu modda kamerayı belirli bir yere yerleştirir, kamera görüntüsünü yönlendirmek için bir yön belirler, görüntü açısını ayarlamak için kamerayı eğme açısını değiştirir ve kameranın yakınlaştırma düzeyini ayarlarsınız.

Aşağıdaki kod snippet'inde, kamerayı hareket ettirmenin yaygın yollarından bazıları gösterilmektedir.

private static final LatLng SYDNEY = new LatLng(-33.88, 151.21);
private static final LatLng MOUNTAIN_VIEW = new LatLng(37.4, -122.1);

private GoogleMap map;
... // Obtain the map from a SupportNavigationFragment or NavigationView.

// Move the camera instantly to Sydney with a zoom of 15.
map.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, 15));

// Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomIn());

// Zoom out to zoom level 10, animating with a duration of 2 seconds.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);

// Construct a CameraPosition focusing on Mountain View and animate the camera to that position.
CameraPosition cameraPosition = new CameraPosition.Builder()
    .target(MOUNTAIN_VIEW)      // Sets the center of the map to Mountain View
    .zoom(17)                   // Sets the zoom
    .bearing(90)                // Sets the orientation of the camera to east
    .tilt(30)                   // Sets the tilt of the camera to 30 degrees
    .build();                   // Creates a CameraPosition from the builder
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));

Rota özeti modunu gösterme

showRouteOverview kamera ayarı, yolculuğun tamamını gösterir. Birden fazla hedefi olan yolculuklar için bu mod, rotanın kullanılmayan bölümünü gösterir.

// Place the camera to see the remaining route:
mNavFragment.showRouteOverview();

Sonraki adım

Yerleşik kullanıcı arayüzü bileşenlerinden hangilerinin haritanızda görüneceğini belirleyerek kullanıcıların haritanızla etkileşim şeklini nasıl özelleştireceğinizi öğrenmek için Navigasyon kullanıcı arayüzünü özelleştirme başlıklı makaleyi inceleyin.