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. | |
GMSCameraPosition * | camera |
Controla la cámara, que define la orientación del mapa. | |
GMSProjection * | projection |
Muestra un objeto GMSProjection que puedes usar para convertir entre coordenadas de pantalla y coordenadas de latitud y longitud. | |
BOOL | myLocationEnabled |
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. | |
GMSMarker * | selectedMarker |
Es el marcador seleccionado. | |
BOOL | trafficEnabled |
Controla si el mapa genera datos de tráfico (si están disponibles). | |
GMSMapViewType | mapType |
Controla el tipo de mosaicos de mapas que se deben mostrar. | |
GMSMapStyle * | mapStyle |
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) | |
BOOL | buildingsEnabled |
Si la estableces, se mostrarán los edificios 3D cuando estén disponibles. | |
BOOL | indoorEnabled |
Establece si se muestran los mapas de interiores cuando están disponibles. | |
GMSIndoorDisplay * | indoorDisplay |
Obtiene la instancia de GMSIndoorDisplay que permite observar o controlar aspectos de la visualización de datos en interiores. | |
GMSUISettings * | configuración |
Obtiene el objeto GMSUISettings, que controla la configuración de la interfaz de usuario del mapa. | |
UIEdgeInsets | padding |
Controla la región “visible” de la vista. | |
GMSMapViewPaddingAdjustmentBehavior | paddingAdjustmentBehavior |
Controla cómo se agregan las inserciones del área segura a los valores de padding. | |
BOOL | accessibilityElementsHidden |
La configuración predeterminada es YES. | |
GMSMapLayer * | capa |
Descriptor de acceso para el tipo CALayer personalizado que se usa en la capa. | |
GMSFrameRate | preferredFrameRate |
Controla la velocidad de fotogramas de renderización. | |
GMSCoordinateBounds * | cameraTargetBounds |
Si no es nulo, restringe el objetivo de la cámara para que los gestos no hagan que salga de los límites especificados. | |
GMSMapCapabilityFlags | mapCapabilities |
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. | |
Funciones relacionadas | |
(ten en cuenta que estas no son funciones de los miembros). | |
NSString *const | kGMSAccessibilityCompass |
Es el identificador de accesibilidad del botón de brújula. | |
NSString *const | kGMSAccessibilityMyLocation |
Es el identificador de accesibilidad del botón "mi ubicación". | |
NSString *const | kGMSAccessibilityOutOfQuota |
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.
- (GMSFeatureLayer<GMSPlaceFeature *> *) featureLayerOfFeatureType: | (GMSFeatureType). | featureType |
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:.
Documentación de las funciones de amigos y relacionados
- (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.
- (GMSMapViewPaddingAdjustmentBehavior) paddingAdjustmentBehavior [read, write, assign] |
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.
- (GMSMapCapabilityFlags) mapCapabilities [read, assign] |
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.