Anpassung von Version 1 des Android Consumer SDK

Markierungen anpassen

In früheren Versionen des Consumer SDK haben Sie das MarkerStyleOptions-Objekt des Consumer SDK verwendet, um die Eigenschaften des Markierungsstils anzupassen. Im Consumer SDK v1.0 verwenden Sie das MarkerOptions-Objekt direkt aus dem Maps SDK.

// Centering the marker anchor at (0.5, 0.5) is recommended.
// For vehicle markers, set flat to true to allow the vehicle marker to freely
// rotate flat on the map (rather than always have it face the camera).
MarkerOptions vehicleMarkerOptions = new MarkerOptions()
    .flat(true)
    .anchor(0.5f, 0.5f)
    .icon(vehicleIcon)
    .zIndex(1.0f);
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE);

ConsumerMapStyle gibt die SDK-spezifischen Standardstiloptionen für einen bestimmten Markertyp zurück, wenn der Stil noch nicht festgelegt wurde oder die Stiloptionen auf null festgelegt wurden.

// ConsumerMapStyle returns the SDK-set default style options if none has been set yet.
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setMarkerStyleOptions(MarkerType.PICKUP_POINT, /* markerStyleOptions= */ null);
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

Wenn Sie keinen neuen Stil von Grund auf erstellen möchten, können Sie den Standardstil ändern. Im folgenden Beispiel wird nur das Symbol für die Abholung geändert. Für die restlichen Markierungsoptionen werden die Standardeinstellungen des SDK verwendet.

// getMarkerStyleOptions returns the default pickup point style options, since
// the custom style hasn't been set yet.
MarkerOptions pickupPointStyleOptions =
  consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);
// Modify the icon value and set the style.
consumerMapStyle.setMarkerStyleOptions(
  pickupPointStyleOptions.icon(pickupPointIcon));

Polylinienanpassung

In früheren Versionen des Consumer SDK haben Sie das PolylineStyleOptions-Objekt des Consumer SDK verwendet, um die Stileigenschaften von Polylinien anzupassen. Im Consumer SDK v1.0 verwenden Sie das PolylineOptions-Objekt aus dem Maps SDK, um die Eigenschaften des Basis-Polylinien-Stils anzupassen, und das TrafficStyle-Objekt, um die Farben für den Polylinienverkehr anzupassen.

Polylinien für den Verkehr sind in der Alpha-Variante des Consumer SDK v1.0 verfügbar. Wenn Verkehrsinformationen angezeigt werden, wird die Farbe der Basispoleylinie durch die Verkehrsfarben überschrieben. Traffic ist standardmäßig nicht sichtbar. Felder in TrafficStyle, die nicht festgelegt sind, werden mit SDK-spezifischen Standardwerten gefüllt.

// PolylineOptions is from Maps SDK
PolylineOptions polylineOptions = new PolylineOptions()
  .color(color)
  .width(width)
  .geodesic(geodesic)
  .startCap(startCap)
  .endCap(endCap)
  .zIndex(zIndex);
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, polylineOptions);

// TrafficStyle is from ConsumerSDK
TrafficStyle trafficStyle = TrafficStyle.builder()
  .setTrafficVisibility(true)
  .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
  .setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
  .setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
  .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
  .build();
consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);

ConsumerMapStyle gibt die Standardstiloptionen des SDK für einen bestimmten Polylinien-Typ zurück, wenn noch keine festgelegt wurden oder wenn die Stiloptionen auf null festgelegt sind. Das gilt sowohl für die Basis-PolylineOptions als auch für die TrafficStyle.

// ConsumerMapStyle returns the SDK's default style options if none has been set yet.
PolylineOptions defaultActiveRouteStyleOptions = consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, /* polylineStyleOptions= */ null);
PolylineOptions defaultActiveRouteStyleOptions =
  consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

Wenn Sie keinen neuen Stil von Grund auf erstellen möchten, können Sie den Standardstil ändern. Im folgenden Beispiel wird nur die Farbe der Grundlinie der aktiven Route geändert. Für die restlichen Markierungsoptionen werden die Standardstileinstellungen des SDK verwendet.

// Only customize the remaining route polyline color.
PolylineOptions remainingRouteStyleOptions =
     consumerMapStyle.getPolylineStyleOptions(PolylineType.REMAINING_ROUTE);
consumerMapStyle.setPolylineStyleOptions(
  remainingRouteStyleOptions.color(Color.DARK_BLUE));