Harita ekle

Platform seçin: Android iOS JavaScript

Haritalar, API'de GMSMapView sınıfıyla gösterilir. UIView alt sınıfı. Harita, Google Haritalar'daki en önemli nesnedir ve iOS için Google Haritalar SDK'sını içerir ve ekleme, kaldırma işlemleri için gerekli yöntemleri sunar. ve çoklu çizgiler gibi diğer nesneleri yönetmenizi sağlar.

Giriş

iOS için Haritalar SDK'sı, bir Google haritasını Google Haritalar'da emin olun. Bu haritalar, Google Haritalar'da gördüğünüz haritalarla aynı görünüme sahiptir Google Haritalar SDK, iOS uygulamasında aynı özelliklerin birçoğunu sunar.

API, harita oluşturma işlevine ek olarak iOS kullanıcı arayüzü modeliyle tutarlı etkileşimler. Örneğin, Yeşil Ofis projenizde kullanıcı hareketlerine tepki veren yanıtlayıcılar tanımlayarak, bir haritayla etkileşimleri artırma örneğin, dokunma ve iki kez vurma gibi işlemler yapabilir.

Bir Harita nesnesiyle çalışırken anahtar sınıfı GMSMapView sınıfıdır. GMSMapView, şu işlemleri otomatik olarak işler:

  • Google Haritalar hizmetine bağlanılıyor.
  • Harita parçaları indiriliyor.
  • Kartlar cihaz ekranında gösteriliyor.
  • Kaydırma ve yakınlaştırma gibi çeşitli denetimler gösteriliyor.
  • Haritayı hareket ettirip yakınlaştırarak veya uzaklaştırarak kaydırma ve yakınlaştırma hareketlerine yanıt verme.
    • İki parmakla yapılan hareketlere, kameranın görüntüleme açısını yatırarak yanıt verme haritası.

Bu otomatik işlemlere ek olarak, kullanıcılarınızın davranışlarıyla ilgili elde edilen özellikler ve yöntemlerle haritanın görünümünün GMSMapView sınıf. GMSMapView, işaretçi ve zemin eklemenize ve kaldırmanıza olanak tanır. çoklu çizgileri değiştirebilir, görüntülenen haritanın türünü değiştirebilir ve GMSCameraPosition üzerinden haritada gösterilen sınıfını kullanır.

SwiftUI ile Haritalar Oluşturma

SwiftUI, bildirim temelli bir yaklaşım kullanarak kullanıcı arayüzü oluşturmak için ek bir yöntem sunar. Siz SwiftUI'ye, görünümünüzün tüm farklı eyaletlerle birlikte nasıl görünmesini istediğinizi söyleyin sistem gerisini halleder. SwiftUI, görünümü ne zaman günceller? bir etkinlik veya kullanıcı işlemi nedeniyle temel durumun değişmesi.

iOS için Haritalar SDK'sı UIKit temel alınarak oluşturulmuştur ve SwiftUI uyumlu görünüm. SwiftUI'ye harita eklemek için UIViewRepresentable veya UIViewControllerRepresentable. Daha fazla bilgi edinmek için Codelab iOS uygulamanıza harita ekleyerek SwiftUI.

Harita ekleme

Harita eklemek için temel adımlar şunlardır:

  1. SDK'yı edinmek, bir API anahtarı edinmek ve gerekli çerçeveleri eklemek için: şuradaki adımları uygulayın:

    1. Google Cloud Console'da kurma

    2. API anahtarı kullanma

    3. Xcode Projesi oluşturma

    4. AppDelegate içinde API anahtarınızı provideAPIKey: uygulamasına sağlayın GMSServices sınıfındaki sınıf yöntemi.

    5. Bir ViewController oluşturun veya güncelleyin. Harita bu ayar açıkken görünür hale geldiğinden emin olun. Bunu mutlaka viewDidLoad yöntemini çağırın.

    6. Harita görünümünü başlatırken, yapılandırma seçeneklerini GMSMapViewOptions Mülkler şunları içerir: frame, camera, mapID,backgroundColor veya screen.

    7. Harita seçenekleri camera mülkünüzü GMSCameraPosition nesne. Bu, videonun orta ve yakınlaştırma düzeyini belirtir. tıklayın.

    8. GMSMapView kullanarak GMSMapView sınıfı oluşturma ve örneklendirme options: yöntemini çağırın. Bu harita, görüntüleme denetleyicisinin frame harita seçeneği için CGRectZero varsayılan değeri şöyle olabilir: frame görünümü olarak kullanılır. Harita otomatik olarak yeniden boyutlandırılır.

    9. GMSMapView nesnesini, görünüm denetleyicisinin görünümü olarak ayarlayın. Örneğin, self.view = mapView;

Aşağıdaki örnekte, bir uygulamaya Singapur şehir merkezinde ortalanan bir harita eklenmiştir.

Swift

import GoogleMaps

class MapObjects : UIViewController {
  override func viewDidLoad() {
    super.viewDidLoad()

    let options = GMSMapViewOptions()
    options.camera = GMSCameraPosition(latitude: 1.285, longitude: 103.848, zoom: 12)
    options.frame = self.view.bounds;

    let mapView = GMSMapView(options:options)
    self.view = mapView
  }
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];

  GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
  options.camera = [GMSCameraPosition cameraWithLatitude:1.285
                                                        longitude:103.848
                                                             zoom:12];
  options.frame = self.view.bounds;

  GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
  self.view = mapView;
}

Bu adımları uyguladıktan sonra GMSMapView öğesini daha fazla yapılandırabilirsiniz. nesnesini tanımlayın.

Sırada ne var?

Bu adımları tamamladıktan sonra, haritayı Ayarlar'da bulabilirsiniz.