Kontroller ve hareketler

Platform seçin: Android iOS JavaScript

iOS için Haritalar SDK'sını kullanarak, haritada hangi yerleşik kullanıcı arayüzü bileşenlerinin görüneceğini ve hangi hareketlere izin verileceğini belirleyerek kullanıcıların haritanızla etkileşim kurma ş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 kontrollerin görünürlüğünü açıp kapatabilirsiniz. Bu sınıfta yapılan değişiklikler haritaya hemen 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önü gösterecek şekilde yönlendirildiğinde görünür. Kullanıcı pusulayı tıkladığında kamera, yönü sıfır (varsayılan yön) olan bir konuma geri döner ve pusula kısa bir süre sonra kaybolur.

Pusula varsayılan olarak devre dışıdır. GMSUISettings nesnesinin 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 options = GMSMapViewOptions()
options.camera = camera
let mapView = GMSMapView(options: options)
mapView.settings.compassButton = true
      

Objective-C

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.757815
                                                        longitude:-122.50764
                                                             zoom:12];
GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
options.camera = camera;
GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
mapView.settings.compassButton = YES;
      

Konumum düğmesi

Konumum düğmesi, yalnızca etkinleştirildiğinde ekranın sağ alt köşesinde görünür. Kullanıcı düğmeyi tıkladığında, kullanıcının konumu biliniyorsa kamera kullanıcının mevcut konumuna odaklanmak için animasyonlu bir şekilde 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;
      

Kat seçici

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

GMSUISettings öğesinin indoorPicker özelliğini NO olarak ayarlayarak kat seçici kontrolünü 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ı, kamera ayarlarına programatik erişimi sınırlamaz.

  • scrollGestures: Kaydırma hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. Bu ayar etkinleştirilirse kullanıcılar kamerayı kaydırmak için kaydırma hareketi yapabilir.
  • zoomGestures: Yakınlaştırma hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. Etkinleştirilirse kullanıcılar kamerayı yakınlaştırmak için iki kez dokunabilir, iki parmakla dokunabilir veya sıkıştırabilir. scrollGestures etkinleştirildiğinde iki kez dokunmak veya sıkıştırmak, kamerayı belirtilen noktaya kaydırabilir.
  • tiltGestures: Eğme hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. Etkinleştirilirse kullanıcılar, kamerayı eğmek için iki parmakla dikey olarak aşağı veya yukarı kaydırma hareketini kullanabilir.
  • rotateGestures: Döndürme hareketlerinin etkinleştirilip etkinleştirilmeyeceğini kontrol eder. 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 options = GMSMapViewOptions()
  options.camera = camera
  let mapView = GMSMapView(options: options)
  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];
  GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
  options.camera = camera;
  GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
  mapView.settings.scrollGestures = NO;
  mapView.settings.zoomGestures = NO;
  self.view = mapView;
}