Personaliza los marcadores

Selecciona la plataforma: Android iOS JavaScript

La ConsumerMapStyle clase proporciona métodos de captador y establecedor con personalización dinámica para marcadores y polilíneas. Esta clase se expone de forma asíncrona con el ConsumerController.getConsumerMapStyle() método.

La personalización de la IU persiste en las rotaciones del dispositivo y permanece vigente hasta que desvinculas el ConsumerController.

Personaliza los marcadores

Para establecer el tipo de marcador y sus propiedades, usa el ConsumerMapStyle.setMarkerStyleOptions() método. Tus opciones de marcadores personalizados anulan los valores predeterminados que proporciona el SDK para el consumidor. Para restablecer los valores predeterminados, llama a setMarkerStyleOptions() con null para el parámetro MarkerOptions. Recupera el MarkerOptions activo getMarkerStyleOptions().

Selecciona un tipo de marcador

Puedes usar y personalizar los siguientes íconos de marcador:

  • TRIP_PICKUP_POINT - Se muestra mientras se sigue un viaje.
  • TRIP_DROPOFF_POINT: Se muestra mientras se sigue un viaje.
  • TRIP_INTERMEDIATE_DESTINATION
  • TRIP_VEHICLE: Se muestra mientras se sigue un viaje.

    El SDK para el consumidor actualiza la rotación del ícono TRIP_VEHICLE durante la supervisión del viaje para imitar el comportamiento del vehículo real mientras recorre la ruta.

Selecciona opciones de marcador

Para personalizar los marcadores de tu app para el consumidor, sigue estos pasos:

  1. Usa las propiedades de cada marcador que proporciona MarkerOptions de Google Maps.

  2. Compila MarkerOptions con su constructor.

  3. Especifica propiedades personalizadas con métodos de estilo "Setter".

  4. Si lo prefieres, usa tu propio elemento de IU imitando los patrones que proporciona el constructor MarkerOptions.

  5. Para desactivar un marcador, establece la propiedad visible en false. Luego, puedes usar tu propio elemento de IU en su lugar.

Para obtener más información, consulta Google Maps MarkerOptions.

Ejemplos de personalizaciones de marcadores

Java

// Initializing marker options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setMarkerStyleOptions(
              MarkerType.TRIP_VEHICLE,
              new MarkerOptions()
                  .visible(false));
        });

// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null);

Kotlin

// Initializing marker options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, MarkerOptions().visible(false))
  })

// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null)

¿Qué sigue?