Referencia de la clase GMSFeatureLayer

Referencia de la clase GMSFeatureLayer

Descripción general

Una clase que representa una colección de todos los componentes del mismo GMSFeatureType, cuyo estilo se puede anular en el cliente

Cada GMSFeatureType tendrá un GMSFeatureLayer correspondiente.

Lo hereda GMSDatasetFeatureLayer.

Funciones públicas de los miembros

(tipo de instancia)- initWithFeatureType:
 Crea una instancia de capa de componentes para realizar pruebas.

Propiedades

GMSFeatureTypefeatureType
 El tipo de componente asociado con esta capa.
BOOLdisponibles
 Determina si el GMSFeatureLayer basado en datos está disponible.
GMSFeatureStyle *_Nullable(^)(T)estilo
 Bloque de diseño que se aplicará a todos los elementos de esta capa.

Documentación de la función de miembro

- (instancetype) initWithFeatureType: (GMSFeatureType) featureType

Crea una instancia de capa de componentes para realizar pruebas.

Este método solo debe usarse para tus pruebas de unidades. En producción, solo el SDK debe crear instancias de GMSFeatureLayer.


Documentación de la propiedad

- (GMSFeatureType) featureType [read, assign]

El tipo de componente asociado con esta capa.

Todos los elementos asociados con la capa serán de este tipo.

- (BOOL) disponible [read, assign]

Determina si el GMSFeatureLayer basado en datos está disponible.

El diseño basado en datos requiere el framework de Metal, un ID de mapa válido y que se aplique el tipo de componente. Si es NO, el diseño de GMSFeatureLayer vuelve a los valores predeterminados y no se activan los eventos.

- (GMSFeatureStyle* _Nullable(^ estilo)(T)) [read, write, assign]

Bloque de diseño que se aplicará a todos los elementos de esta capa.

El bloque de estilo se aplica a todos los componentes visibles en el viewport cuando se llama al método set, y se ejecuta varias veces para los componentes posteriores que ingresan al viewport.

La función debe ser determinística y devolver resultados coherentes cuando se aplica sobre los mosaicos del mapa. Si se cambian especificaciones de diseño de algún componente, se debe volver a establecer style. Cambiar el comportamiento del bloque de diseño sin llamar al método set style generará un comportamiento indefinido, incluidas las renderizaciones de mapas inactivas o rotas. Consulta el siguiente ejemplo:

 {.swift}
 var selectedPlaceIDs = Set<String>()
 var style = FeatureStyle(fill: .red, stroke: .clear, strokeWidth: 0)
 layer.style = { feature in
   selectedPlaceIDs.contains(feature.placeID) ? style : nil
 }
 selectedPlaceIDs.insert("foo")
 style = FeatureStyle(fill: .clear, stroke: .blue, strokeWidth: 1.5)
 layer.style = { feature in
   selectedPlaceIDs.contains(feature.placeID) ? style : nil
 }