Kontroller ve hareketler

Platform seçin: Android iOS JavaScript

iOS için Haritalar SDK'sını kullanarak, haritanızda hangi yerleşik kullanıcı arayüzü bileşenlerinin gösterileceğini ve hangi hareketlere izin verileceğini belirleyerek kullanıcıların haritanızla etkileşim şeklini özelleştirebilirsiniz.

Harita kontrolleri

iOS için Haritalar SDK'sı, iOS için Google Haritalar uygulamasında bulunanlara benzer bazı yerleşik kullanıcı arayüzü kontrolleri sağlar. GMSUISettings sınıfını kullanarak bu denetimlerin görünürlüğünü değiştirebilirsiniz. Bu sınıfta yapılan değişiklikler hemen haritaya yansıtılır.

Pusula

iOS için Haritalar SDK'sı, belirli durumlarda haritanın sağ üst köşesinde görünen bir pusula grafiği sağlar. Pusula yalnızca kamera sıfır olmayan bir yöne bakacak şekilde yönlendirildiğinde görünür. Kullanıcı pusulayı tıkladığında kamera, animasyonlu olarak sıfır yön açısına (varsayılan yön) geri döner ve pusulayı kısa süre sonra kaybolur.

Pusula varsayılan olarak devre dışıdır. GMSUISettings mülkündeki compassButton özelliğini YES olarak ayarlayarak pusulayı etkinleştirebilirsiniz. Ancak pusulanın her zaman gösterilmesini zorunlu kılamazsınız.

Swift

let camera = GMSCameraPosition(latitude: 37.757815, longitude: -122.50764, zoom: 12)
let mapView = GMSMapView(frame: .zero, camera: camera)
mapView.settings.compassButton = true
      

Objective-C

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.757815
                                                        longitude:-122.50764
                                                             zoom:12];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
mapView.settings.compassButton = YES;
      

Konumum düğmesi

Konumum düğmesi, ekranın sağ alt köşesinde yalnızca Konumum düğmesi etkinleştirildiğinde görünür. Kullanıcı düğmeyi tıkladığında kamera, kullanıcının konumu biliniyorsa kullanıcının mevcut konumuna odaklanmak için hareket eder. GMSUISettings öğesinin myLocationButton özelliğini YES olarak ayarlayarak düğmeyi etkinleştirebilirsiniz.

Swift

mapView.settings.myLocationButton = true
      

Objective-C

mapView.settings.myLocationButton = YES;
      

Zemin seçici

Kat seçici kontrolü, belirgin bir şekilde kapalı alan haritası gösterildiğinde ekranın sağ alt kısmında görünür. İki veya daha fazla kapalı alan haritası görünür olduğunda kat seçici, ekranın ortasına en yakın binayla ilgilidir. Her binanın, seçici ilk görüntülendiğinde seçilen bir varsayılan katı vardır. Seçiciden farklı bir kat seçebilirsiniz.

GMSUISettings mülkünün indoorPicker özelliğini NO olarak ayarlayarak taban seçici denetimini devre dışı bırakabilirsiniz.

Swift

mapView.settings.indoorPicker = false
      

Objective-C

mapView.settings.indoorPicker = NO;
      

Harita hareketleri

GMSMapView sınıfının bir özelliği olarak kullanılabilen GMSUISettings sınıfının özelliklerini ayarlayarak haritadaki varsayılan hareketleri devre dışı bırakabilirsiniz. Aşağıdaki hareketler programatik olarak etkinleştirilebilir ve devre dışı bırakılabilir. Hareketin devre dışı bırakılmasının, kamera ayarlarına programatik erişimi sınırlamayacağını unutmayın.

  • scrollGestures: Kaydırma hareketlerinin etkinleştirilip devre dışı bırakılacağını kontrol eder. Bu ayar etkinleştirilirse kullanıcılar kamerayı kaydırarak hareket ettirebilir.
  • zoomGestures: Yakınlaştırma hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. Bu ayar etkinleştirilirse kullanıcılar kamerayı yakınlaştırmak için iki kez dokunabilir, iki parmağınızla dokunabilir veya iki parmağınızla yakınlaştırabilir. scrollGestures etkinken iki kez dokunmanın veya sıkıştırmanın kamerayı belirtilen noktaya kaydırabileceğini unutmayın.
  • tiltGestures: Eğilme hareketlerinin etkinleştirilip devre dışı bırakılacağını kontrol eder. Bu özellik etkinleştirildiğinde kullanıcılar kamerayı eğmek için iki parmağınızla dikey olarak aşağı veya yukarı kaydırabilir.
  • rotateGestures: Döndürme hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. Bu ayar etkinleştirilirse kullanıcılar kamerayı döndürmek için iki parmakla döndürme hareketini kullanabilir.

Aşağıdaki örnekte hem kaydırma hem de yakınlaştırma hareketleri devre dışı bırakılmıştır.

Swift

override func loadView() {
  let camera = GMSCameraPosition.camera(
    withLatitude: 1.285,
    longitude: 103.848,
    zoom: 12
  )

  let mapView = GMSMapView.map(withFrame: .zero, camera: camera)
  mapView.settings.scrollGestures = false
  mapView.settings.zoomGestures = false
  self.view = mapView
}
      

Objective-C

- (void)loadView {
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:1.285
                                                          longitude:103.848
                                                               zoom:12];
  GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
  mapView.settings.scrollGestures = NO;
  mapView.settings.zoomGestures = NO;
  self.view = mapView;
}