Karte einrichten

Plattform auswählen: Android iOS

So richten Sie eine Karte ein, um eine Fahrt unter iOS zu verfolgen:

  1. Kartenanzeige initialisieren
  2. Kartenereignisse verarbeiten

Schritt 1: Kartenansicht initialisieren

Wenn Sie einem Trip folgen möchten, müssen Sie eine Kartenansicht initialisieren.

Im folgenden Beispiel wird gezeigt, wie GMTCMapView initialisiert wird.

Swift

/*
 * MapViewController.swift
 */
class ViewController: UIViewController, GMTCMapViewDelegate {
  private var rideSharingMap: GMTCMapView?

  override func viewDidLoad() {
    super.viewDidLoad()

    self.rideSharingMap = GMTCMapView(frame: UIScreen.main.bounds)
    self.rideSharingMap.delegate = self
    self.rideSharingMap?.settings.myLocationButton = true
    self.view.addSubview(self.rideSharingMap!)
    ...
    }
  }

Objective-C

/*
 * MapViewController.h
 */
@interface MapViewController : UIViewController<GMTCMapViewDelegate>
...
@end

/*
 * MapViewController.m
 */
@implementation MapViewController

- (void)viewDidLoad {
  [super viewDidLoad];
  ...
  self.mapView = [[GMTCMapView alloc] initWithFrame:CGRectZero];
  self.mapView.settings.myLocationButton = YES;
  self.mapView.delegate = self;
  ...
}

...

@end

Schritt 2: Ereignisse in der Kartenansicht verarbeiten

Nachdem Sie die Kartenansicht initialisiert haben, erfahren Sie hier, wie Sie einen Delegaten implementieren, um Ereignisänderungen in der Kartenansicht zu verarbeiten, während sich das Fahrzeug auf der Route bewegt.

Swift

func mapViewDidInitialize(_ mapview: GMTCMapView) {
  // Handle the update to the state of the map view to browsing.
}

func mapView(_ mapView: GMSMapView, didTapConsumerMarker mapMarker: GMSMarker, markerType: GMTCMapViewMarkerType) -> Bool {
  // Handle the mapView marker was tapped.
}

Objective-C

/*
 * MapViewController.m
 */
#pragma mark - GMTCMapViewDelegate implementation

// Handle state update of map view.
- (void)mapViewDidInitializeCustomerState:(GMTCMapView *)mapview {
  // Handle the update to the state of the map view to browsing.
}

- (void)mapView:(GMSMapView *)mapView
    didTapConsumerMarker:(nonnull GMSMarker *)mapMarker
              markerType:(GMTCMapViewMarkerType)markerType {
  // Handle the mapView marker was tapped.
}

Nächste Schritte