Auf dieser Seite wird beschrieben, wie Sie einer Karte ein Dataset hinzufügen und Stile anwenden.

Vorbereitung
Bevor Sie fortfahren, sollten Sie eine Karten-ID, einen Kartenstil und eine Dataset-ID haben.
Dataset-ID mit Kartenstil verknüpfen
Wenn Sie die Elemente eines Datasets gestalten möchten, wenden Sie eine Stilfunktion auf die Elementebene des Datasets einer Karte an. Die Element-Ebene des Datasets wird erstellt, wenn Sie ein Dataset mit einem Kartenstil verknüpfen.
So verknüpfen Sie Ihr Dataset mit dem verwendeten Kartenstil:
- Rufen Sie in der Google Cloud Console die Seite Datasets auf.
- Klicken Sie auf den Namen des Datasets. Daraufhin wird die Seite Dataset-Details angezeigt.
- Klicken Sie auf den Tab Vorschau.
- Klicken Sie im Bereich Verknüpfte Kartenstile auf
KARTENSTIL HINZUFÜGEN.
- Kreuzen Sie die Kästchen für die zu verknüpfenden Kartenstile an und klicken Sie dann auf SPEICHERN.
Stile auf das Dataset anwenden
Wenn Sie ein Element der Dataset-Ebene gestalten möchten, verwenden Sie einen Stil-Closure, der ein
GMSDatasetFeature akzeptiert und ein GMSFeatureStyle zurückgibt, um Stil
attribute zu definieren. Legen Sie dann die Stileigenschaft auf einen Stil-Closure fest, der die Gestaltungslogik enthält.
Der Stil-Closure muss deterministisch sein und bei der Anwendung konsistente Ergebnisse zurückgeben. Wenn sich Stilspezifikationen eines Elements ändern, muss der Stil noch einmal angewendet werden.
Strich, Füllung und Punktradius festlegen
Beim Gestalten eines Elements in der Stil-Fabrikmethode können Sie Folgendes festlegen:
Strichfarbe und -deckkraft der Umrandung, wie in der Klasse
UIColordefiniert. Der Standardwert ist transparent (UIColor.clearColor).Strichstärke der Umrandung in Bildschirmpixeln. Der Standardwert ist 2.
Füllfarbe und -deckkraft , wie in der Klasse
UIColordefiniert. Der Standardwert ist transparent (UIColor.clearColor).Punktradius eines Punktelements zwischen 0 und 128 Pixeln.
Einfache Stilregeln verwenden
Die einfachste Möglichkeit, Elemente zu gestalten, ist die Definition konstanter Stilattribute wie Farbe, Deckkraft und Linienbreite. Sie können Stiloptionen für Elemente direkt auf eine Elementebene des Datasets anwenden oder sie in Verbindung mit benutzerdefinierten Stilen verwenden.
Swift
let mapView = GMSMapView(frame: .zero, mapID: GMSMapID(identifier: "YOUR_MAP_ID"), camera: GMSCameraPosition(latitude: 40.7, longitude: -74.0, zoom: 12)) let layer = mapView.datasetFeatureLayer(of: "YOUR_DATASET_ID") // Define a style with green fill and stroke. // Apply the style to all features in the dataset. layer.style = { feature in let style = MutableFeatureStyle() style.fillColor = .green.withAlphaComponent(0.1) style.strokeColor = .green style.strokeWidth = 2.0 return style }
Objective-C
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:[GMSMapID mapIDWithIdentifier:@"MAP_ID"] camera:[GMSCameraPosition cameraWithLatitude: 40.7 longitude: -74.0 zoom:12]]; GMSDatasetFeatureLayer *layer = [mapView datasetFeatureLayerOfDatasetID:@"YOUR_DATASET_ID"]; // Define a style with green fill and stroke. // Apply the style to all features in the dataset. layer.style = ^(GMSDatasetFeature *feature) { GMSMutableFeatureStyle *style = [GMSMutableFeatureStyle style]; style.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.1]; style.strokeColor = [UIColor greenColor]; style.strokeWidth = 2.0; return style; };
Deklarative Stilregeln verwenden
Sie können Stilregeln deklarativ basierend auf einem Attribut des Elements festlegen und auf das gesamte Dataset anwenden. Über die Stilfunktion für Elemente können Sie auch nil zurückgeben, z. B. wenn ein Teil der Elemente unsichtbar bleiben soll.
Verwenden Sie beispielsweise
GMSDatasetFeature.datasetAttributes, um den Wert eines Dataset-Attributs für ein Element zurückzugeben. Anschließend können Sie den Stil des Elements basierend auf seinen Attributen anpassen.
In diesem Beispiel wird der Wert des Attributs „highlightColor“ jedes Elements eines Datasets ermittelt, um den Stil zu steuern:
Swift
layer.style = { feature in var attributeColor: String = feature.datasetAttributes["highlightColor"] // Conditionalize styling based on the value of the "highlightColor" attribute. ... }
Objective-C
// Apply the style to a single dataset feature. layer.style = ^(GMSDatasetFeature *feature) { NSString *attributeColor = feature.datasetAttributes[@"highlightColor"]; // Conditionalize styling based on the value of the "highlightColor" attribute. ... };
Stile von einer Ebene entfernen
Wenn Sie Stile von einer Ebene entfernen möchten, legen Sie style auf null fest:
Swift
layer.style = nil
Objective-C
layer.style = nil;
Über die Stilfunktion für Elemente können Sie auch nil zurückgeben, z. B. wenn ein Teil der Elemente unsichtbar bleiben soll.