Marker Icons
MapConductor proporciona varios tipos de iconos de marcador para personalizar la apariencia de los marcadores en el mapa. Todos los iconos implementan la interfaz MarkerIcon y pueden usarse con cualquier proveedor de mapas.
Interfaz MarkerIcon
Section titled “Interfaz MarkerIcon”Interfaz base para todos los iconos de marcador:
interface MarkerIcon { // Propiedades comunes para todas las implementaciones de iconos}Tipos de icono
Section titled “Tipos de icono”DefaultIcon (ColorDefaultIcon)
Section titled “DefaultIcon (ColorDefaultIcon)”Icono estándar de marcador coloreado con apariencia y texto personalizables.
Nota:
DefaultIcones un alias deColorDefaultIcon.
DefaultIcon( scale: Float = 1.0f, label: String? = null, fillColor: Color = Color.Red, strokeColor: Color = Color.Black, strokeWidth: Dp = 1.dp, labelTextColor: Color = Color.White, labelStrokeColor: Color? = null, debug: Boolean = false)Parámetros
Section titled “Parámetros”scale: factor de escala del icono (1.0 = tamaño normal, 0.5 = mitad de tamaño, 2.0 = el doble).label: texto mostrado en el marcador (opcional).fillColor: color de fondo del marcador.strokeColor: color del borde del marcador.strokeWidth: grosor del borde.labelTextColor: color del texto de la etiqueta.labelStrokeColor: color de contorno opcional para el texto.debug: muestra información de depuración si está activado.
Ejemplos de uso
Section titled “Ejemplos de uso”// Sustituye MapView por el proveedor de mapas que prefieras, como GoogleMapView o MapboxMapViewMapView(state = mapViewState) { // Marcador rojo básico Marker( position = GeoPointImpl.fromLatLong(37.7749, -122.4194), icon = DefaultIcon() )
// Marcador personalizado con etiqueta Marker( position = GeoPointImpl.fromLatLong(37.7849, -122.4094), icon = DefaultIcon( label = "A", fillColor = Color.Blue, strokeColor = Color.White, strokeWidth = 2.dp ) )}DrawableDefaultIcon
Section titled “DrawableDefaultIcon”Icono basado en un Drawable con soporte para trazo opcional.
DrawableDefaultIcon( backgroundDrawable: Drawable, scale: Float = 1.0f, strokeColor: Color? = null, strokeWidth: Dp = 1.dp)Se utiliza cuando quieres reutilizar drawables existentes (por ejemplo, recursos de tu app) como fondo de tu marcador.
ImageIcon
Section titled “ImageIcon”Icono de marcador que renderiza directamente un Drawable en la posición del marcador.
ImageIcon( drawable: Drawable, anchor: Offset = Offset(0.5f, 0.5f), debug: Boolean = false)anchor: punto de anclaje relativo dentro de la imagen (0.5, 0.5 = centro).
Relación con mapconductor-icons
Section titled “Relación con mapconductor-icons”Cuando utilizas el módulo experimental mapconductor-icons, puedes combinar MarkerIcon con iconos composables como CircleIcon o estilos de info bubble para conseguir marcadores más ricos visualmente.
Consulta también Marker para ver cómo se usan estos iconos en el mapa.