Referencia de la clase GMSMapView


Descripción general

Esta es la clase principal del SDK de Google Maps para iOS y es el punto de entrada para todos los métodos relacionados con el mapa.

Se debe crear una instancia del mapa mediante uno de los constructores -init o -initWithOptions:.

GMSMapView solo se puede leer y modificar desde el subproceso principal, de manera similar a todos los objetos de UIKit. Si llamas a estos métodos desde otro subproceso, se generará una excepción o un comportamiento indefinido.

Funciones públicas de miembro

(tipo de instancia)- init
 Se inicializa con CGRectZero y opciones predeterminadas.
(tipo de instancia)- initWithOptions:
 Crea una nueva vista de mapa con las opciones proporcionadas.
(tipo de instancia)- initWithFrame:
(tipo de instancia)- initWithCoder:
(tipo de instancia)- initWithFrame:camera:
 Compila y muestra una vista de mapa, con un fotograma y un objetivo de la cámara.
(tipo de instancia)- initWithFrame:mapID:camera:
 Compila y muestra una vista de mapa con un marco, un ID de mapa y un objetivo de la cámara.
(void) - startRendering.
 Indica a este mapa que encienda su procesador.
(void) - stopRendering
 Indica a este mapa que apague el renderizador.
(void) - claro
 Elimina todas las marcas que se agregaron al mapa, incluidos los marcadores, las polilíneas y las superposiciones de suelo.
(void) - setMinZoom:maxZoom:
 Configura minZoom y maxZoom.
(nullable GMSCameraPosition *) - cameraForBounds:insets:
 Crea una GMSCameraPosition que presente bounds con padding.
(void) - moveCamera:
 Cambia la cámara según update.
(BOOL) - areEqualForRenderingPosition:position:
 Comprueba si las posiciones determinadas causarían prácticamente que la cámara se renderice de la misma manera, teniendo en cuenta el nivel de precisión y las transformaciones que se usan internamente.
(GMSFeatureLayer
< GMSPlaceFeature * > *)
- featureLayerOfFeatureType:
 Muestra una capa de componentes del tipo especificado.
(void) - animateToCameraPosition:
 Anima la cámara de este mapa en cameraPosition.
(void) - animateToLocation:
 Como animateToCameraPosition:, pero solo cambia la ubicación de la cámara (es decir, de la ubicación actual a location).
(void) animateToZoom:
 Como animateToCameraPosition:, pero solo cambia el nivel de zoom de la cámara.
(void) animateToBearing
 Como animateToCameraPosition:, pero solo cambia el rumbo de la cámara (en grados).
(void) - animateToViewingAngle:
 Como animateToCameraPosition:, pero solo cambia el ángulo de visión de la cámara (en grados).
(void) - animateWithCameraUpdate:
 Aplica cameraUpdate a la cámara actual y, luego, usa el resultado según animateToCameraPosition:.

Funciones de miembro públicas estáticas

(tipo de instancia)+ mapWithFrame:camera:
 Compila y muestra una vista de mapa con un fotograma y un objetivo de la cámara.
(tipo de instancia)+ mapWithFrame:mapID:camera:
 Usa el inicializador conveniente para compilar y mostrar una vista de mapa con un marco, un ID de mapa y un objetivo de la cámara.

Propiedades

ID de IBOutlet< GMSMapViewDelegate >delegado
 GMSMapView.
GMSCameraPositioncamera
 Controla la cámara, que define la orientación del mapa.
GMSProjectionprojection
 Muestra un objeto GMSProjection que puedes usar para convertir entre coordenadas de pantalla y coordenadas de latitud y longitud.
BOOLmyLocationEnabled
 Controla si el punto y el círculo de precisión de Mi ubicación están habilitados.
CLLocation * myLocation
 Si Mi ubicación está habilitada, muestra dónde se dibuja el punto de ubicación del dispositivo.
GMSMarkerselectedMarker
 Es el marcador seleccionado.
BOOLtrafficEnabled
 Controla si el mapa genera datos de tráfico (si están disponibles).
GMSMapViewTypemapType
 Controla el tipo de mosaicos de mapas que se deben mostrar.
GMSMapStylemapStyle
 Controla el estilo del mapa.
float minZoom
 Zoom mínimo (la distancia más alejada de la cámara).
float maxZoom
 Zoom máximo (lo más cerca que esté la cámara de la Tierra)
BOOLbuildingsEnabled
 Si la estableces, se mostrarán los edificios 3D cuando estén disponibles.
BOOLindoorEnabled
 Establece si se muestran los mapas de interiores cuando están disponibles.
GMSIndoorDisplayindoorDisplay
 Obtiene la instancia de GMSIndoorDisplay que permite observar o controlar aspectos de la visualización de datos en interiores.
GMSUISettingsconfiguración
 Obtiene el objeto GMSUISettings, que controla la configuración de la interfaz de usuario del mapa.
UIEdgeInsetspadding
 Controla la región “visible” de la vista.
GMSMapViewPaddingAdjustmentBehaviorpaddingAdjustmentBehavior
 Controla cómo se agregan las inserciones del área segura a los valores de padding.
BOOLaccessibilityElementsHidden
 La configuración predeterminada es YES.
GMSMapLayercapa
 Descriptor de acceso para el tipo CALayer personalizado que se usa en la capa.
GMSFrameRatepreferredFrameRate
 Controla la velocidad de fotogramas de renderización.
GMSCoordinateBoundscameraTargetBounds
 Si no es nulo, restringe el objetivo de la cámara para que los gestos no hagan que salga de los límites especificados.
GMSMapCapabilityFlagsmapCapabilities
 Todas las funciones con disponibilidad condicional (que dependen del mapID o de otra configuración del mapa) que están disponibles en el momento actual.

(ten en cuenta que estas no son funciones de los miembros).

NSString *constkGMSAccessibilityCompass
 Es el identificador de accesibilidad del botón de brújula.
NSString *constkGMSAccessibilityMyLocation
 Es el identificador de accesibilidad del botón "mi ubicación".
NSString *constkGMSAccessibilityOutOfQuota
 Es el identificador de accesibilidad de la etiqueta de error "agotado".

Documentación de las funciones de los miembros

- (tipo de instancia) init

Se inicializa con CGRectZero y opciones predeterminadas.

- (instancetype) initWithOptions: (GMSMapViewOptions no nulos *) options

Crea una nueva vista de mapa con las opciones proporcionadas.

El valor del objeto de opciones se copia con este método.

- (tipo de instancia) initWithFrame: (CGRect) marco
- (instancetype) initWithCoder: (NSCoder *) codificador
+ (tipo de instancia) mapWithFrame: (CGRect) marco
cámara: (GMSCameraPosition *) cámara

Compila y muestra una vista de mapa con un fotograma y un objetivo de la cámara.

+ (tipo de instancia) mapWithFrame: (CGRect) marco
ID del mapa: (GMSMapID *) mapID
cámara: (GMSCameraPosition *) cámara

Usa el inicializador conveniente para compilar y mostrar una vista de mapa con un marco, un ID de mapa y un objetivo de la cámara.

- (tipo de instancia) initWithFrame: (CGRect) marco
cámara: (GMSCameraPosition *) cámara

Compila y muestra una vista de mapa, con un fotograma y un objetivo de la cámara.

Nota:
Esta función dejó de estar disponible. En su lugar, usa -init o -initWithOptions:.
- (tipo de instancia) initWithFrame: (CGRect) marco
ID del mapa: (GMSMapID *) mapID
cámara: (GMSCameraPosition *) cámara

Compila y muestra una vista de mapa con un marco, un ID de mapa y un objetivo de la cámara.

Nota:
Esta función dejó de estar disponible. En su lugar, usa -init o -initWithOptions:.
- (void) startRendering

Indica a este mapa que encienda su procesador.

Esto es opcional e idempotente.

Nota:
Esta función dejó de estar disponible. Este método es obsoleto y se quitará en una versión futura.
- (void) stopRendering

Indica a este mapa que apague el renderizador.

Esto es opcional e idempotente.

Nota:
Esta función dejó de estar disponible. Este método es obsoleto y se quitará en una versión futura.
- (vacío) clear

Elimina todas las marcas que se agregaron al mapa, incluidos los marcadores, las polilíneas y las superposiciones de suelo.

Esta acción no borrará el punto de ubicación visible ni restablecerá el mapType actual.

- (void) setMinZoom: (float)  minZoom
maxZoom: (float)  maxZoom

Configura minZoom y maxZoom.

Este método espera que el mínimo sea menor o igual que el máximo y, de lo contrario, arrojará una excepción con el nombre NSRangeException.

- (nullable GMSCameraPosition *) cameraForBounds: (GMSCoordinateBounds *) límites
inserciones: (UIEdgeInsets) inserciones

Crea una GMSCameraPosition que presente bounds con padding.

La cámara no tendrá ningún rumbo ni inclinación (es decir, apuntará hacia el norte y mirará directamente a la Tierra). Esto tiene en cuenta el marco y el padding de esta GMSMapView.

Si los límites no son válidos, este método mostrará una cámara nula.

- (void) moveCamera: (GMSCameraUpdate *). actualizar

Cambia la cámara según update.

El cambio de la cámara es instantáneo (sin animación).

- (BOOL) areEqualForRenderingPosition: (GMSCameraPosition *) position
posición: (GMSCameraPosition *) otherPosition

Comprueba si las posiciones determinadas causarían prácticamente que la cámara se renderice de la misma manera, teniendo en cuenta el nivel de precisión y las transformaciones que se usan internamente.

Muestra una capa de componentes del tipo especificado.

Las capas de funciones se deben configurar en la consola de Cloud.

Si no existe una capa del tipo especificado en este mapa, si el diseño basado en datos no está habilitado o si no se usa el framework de renderización de Metal, el isAvailable de la capa resultante será NO y no responderá a ninguna llamada.

Requiere el procesador Metal. Obtén información sobre cómo habilitar Metal en https://developers.google.com/maps/documentation/ios-sdk/config#use-metal

- (void) animateToCameraPosition: (GMSCameraPosition *) cameraPosition

Anima la cámara de este mapa en cameraPosition.

- (void) animateToLocation: (CLLocationCoordinate2D)  ubicación

Como animateToCameraPosition:, pero solo cambia la ubicación de la cámara (es decir, de la ubicación actual a location).

- (void) animateToZoom: (float)  zoom

Como animateToCameraPosition:, pero solo cambia el nivel de zoom de la cámara.

Este valor se restringe con [kGMSMinZoomLevel, kGMSMaxZoomLevel].

- (void) animateToBearing: (CLLocationDirection) bearing

Como animateToCameraPosition:, pero solo cambia el rumbo de la cámara (en grados).

Cero indica el norte geográfico.

- (void) animateToViewingAngle: (doble) viewingAngle

Como animateToCameraPosition:, pero solo cambia el ángulo de visión de la cámara (en grados).

Este valor se fijará en un mínimo de cero (es decir, mirando hacia abajo) y entre 30 y 45 grados hacia el horizonte, según la proximidad relativa a la Tierra.

- (void) animateWithCameraUpdate: (GMSCameraUpdate *). cameraUpdate

Aplica cameraUpdate a la cámara actual y, luego, usa el resultado según animateToCameraPosition:.


- (NSString* const) kGMSAccessibilityCompass [related]

Es el identificador de accesibilidad del botón de brújula.

- (NSString* const) kGMSAccessibilityMyLocation [related]

Es el identificador de accesibilidad del botón "mi ubicación".

- (NSString* const) kGMSAccessibilityOutOfQuota [related]

Es el identificador de accesibilidad de la etiqueta de error "agotado".


Documentación de la propiedad

- (ID de IBOutlet<GMSMapViewDelegate>) delegado [read, write, assign]
- (GMSCameraPosition*) Cámara [read, write, copy]

Controla la cámara, que define la orientación del mapa.

La modificación de esta propiedad es instantánea.

- (GMSProjection*) proyección [read, assign]

Muestra un objeto GMSProjection que puedes usar para convertir entre coordenadas de pantalla y coordenadas de latitud y longitud.

Esta es una instantánea de la proyección actual y no se actualizará automáticamente cuando la cámara se mueva. Representa la proyección del último fotograma de GMSMapView dibujado o, cuando la cámara se configuró de forma explícita o el mapa recién creado, el próximo fotograma. Nunca será nulo.

- (BOOL) myLocationEnabled [read, write, assign]

Controla si el punto y el círculo de precisión de Mi ubicación están habilitados.

La configuración predeterminada es NO.

- (CLLocation*) myLocation [read, assign]

Si Mi ubicación está habilitada, muestra dónde se dibuja el punto de ubicación del dispositivo.

Si está inhabilitada o habilitada, pero no hay datos de ubicación disponibles, este valor será nulo. Esta propiedad se puede observar mediante KVO.

- (GMSMarker*) selectedMarker [read, write, assign]

Es el marcador seleccionado.

Cuando se configura esta propiedad, se selecciona un marcador específico y se muestra una ventana de información. Si esta propiedad no es nula, si se establece en nil, se anulará la selección del marcador y se ocultará la ventana de información. Esta propiedad se puede observar mediante KVO.

- (BOOL) trafficEnabled [read, write, assign]

Controla si el mapa genera datos de tráfico (si están disponibles).

Esto está sujeto a la disponibilidad de los datos de tráfico. La configuración predeterminada es NO.

- (GMSMapViewType) mapType [read, write, assign]

Controla el tipo de mosaicos de mapas que se deben mostrar.

La configuración predeterminada es kGMSTypeNormal.

- (GMSMapStyle*) mapStyle [read, write, assign]

Controla el estilo del mapa.

El mapStyle no nulo solo se aplicará si mapType es Normal.

- (flotante) minZoom [read, assign]

Zoom mínimo (la distancia más alejada de la cámara).

La configuración predeterminada es kGMSMinZoomLevel. Modificado con -setMinZoom:maxZoom:.

- maxZoom (flotante) [read, assign]

Zoom máximo (lo más cerca que esté la cámara de la Tierra)

La configuración predeterminada es kGMSMaxZoomLevel. Modificado con -setMinZoom:maxZoom:.

- (BOOL) buildingsEnabled [read, write, assign]

Si la estableces, se mostrarán los edificios 3D cuando estén disponibles.

La configuración predeterminada es YES.

Esto puede resultar útil al agregar una capa de mosaicos personalizada al mapa, para que se vea más claro en niveles de zoom altos. Si cambias este valor, todos los mosaicos se invalidarán brevemente.

- (BOOL) indoorEnabled [read, write, assign]

Establece si se muestran los mapas de interiores cuando están disponibles.

La configuración predeterminada es YES.

Si estableces esta opción como NO, es posible que se borren definitivamente las memorias caché de los datos de interiores y que se restablezca cualquier límite mínimo que haya seleccionado el usuario final.

- (GMSIndoorDisplay*) indoorDisplay [read, assign]

Obtiene la instancia de GMSIndoorDisplay que permite observar o controlar aspectos de la visualización de datos en interiores.

- (GMSUISettings*) configuración [read, assign]

Obtiene el objeto GMSUISettings, que controla la configuración de la interfaz de usuario del mapa.

- (UIEdgeInsets) padding [read, write, assign]

Controla la región “visible” de la vista.

Al aplicar padding, se puede crear un área alrededor del borde de la vista que contendrá datos del mapa, pero no incluirá controles de IU.

Si el padding no está equilibrado, el centro visual de la vista se moverá según corresponda. El padding también afectará la propiedad projection, por lo que la región visible no incluirá el área de padding. GMSCameraUpdate FitToBounds garantizará que se tengan en cuenta este padding y cualquier padding solicitado

Esta propiedad se puede animar dentro de un bloque de animación basado en UIView.

Controla cómo se agregan las inserciones del área segura a los valores de padding.

Al igual que con padding, el área segura inserta los controles del mapa, como la brújula, el botón Mi ubicación y el selector de piso, dentro del área segura del dispositivo.

La configuración predeterminada es kGMSMapViewPaddingAdjustBehaviorAlways.

- (BOOL) accessibilityElementsHidden [read, write, assign]

La configuración predeterminada es YES.

Si estableces la política como NO, GMSMapView generará elementos de accesibilidad para los objetos superpuestos, como GMSMarker y GMSPolyline.

Esta propiedad sigue el protocolo informal de UIAccessibility, excepto por el valor predeterminado de YES.

- (GMSMapLayer*) capa [read, retain]

Descriptor de acceso para el tipo CALayer personalizado que se usa en la capa.

- (GMSFrameRate) preferredFrameRate [read, write, assign]

Controla la velocidad de fotogramas de renderización.

El valor predeterminado es kGMSFrameRateRate.

- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign]

Si no es nulo, restringe el objetivo de la cámara para que los gestos no hagan que salga de los límites especificados.

Todas las funciones con disponibilidad condicional (que dependen del mapID o de otra configuración del mapa) que están disponibles en el momento actual.

No incluye las funciones que están siempre disponibles.