Referência da classe GMSFeatureLayer

Referência da classe GMSFeatureLayer

Visão geral

Uma classe que representa uma coleção de todos os recursos do mesmo GMSFeatureType, com um estilo que pode ser modificado no cliente.

Cada GMSFeatureType terá um GMSFeatureLayer correspondente.

Herdado por GMSDatasetFeatureLayer.

Funções membro público

(instancetype)- initWithFeatureType:
 Criar uma instância de camada de elementos para teste.

Propriedades

GMSFeatureTypefeatureType
 O tipo de elemento associado a esta camada.
BOOLdisponível
 Determina se o GMSFeatureLayer baseado em dados está disponível.
GMSFeatureStyle *_Nullable(^)(T)estilo
 Bloco de estilo a ser aplicado a todos os recursos nesta camada.

Documentação da função membro

— (instancetype) initWithFeatureType: (GMSFeatureType) featureType

Criar uma instância de camada de elementos para teste.

Use esse método apenas para testes de unidade. Na produção, as instâncias de GMSFeatureLayer só podem ser criadas pelo SDK.


Documentação da propriedade

- (GMSFeatureType) featureType [read, assign]

O tipo de elemento associado a esta camada.

Todos os elementos associados à camada serão desse tipo.

- (BOOL) disponível [read, assign]

Determina se o GMSFeatureLayer baseado em dados está disponível.

O estilo baseado em dados exige o Metal Framework, um ID de mapa válido e a aplicação do tipo de elemento. Se for NO, o estilo de GMSFeatureLayer retornará ao padrão e os eventos não serão acionados.

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

Bloco de estilo a ser aplicado a todos os recursos nesta camada.

O bloco de estilo é aplicado a todos os elementos visíveis na janela de visualização quando o setter é chamado e é executado várias vezes para os elementos subsequentes que entram na janela de visualização.

A função deve ser determinista e retornar resultados consistentes quando é aplicada sobre os blocos do mapa. Se alguma especificação de estilo de qualquer recurso for alterada, style precisará ser definido novamente. Mudar o comportamento do bloco de estilo sem chamar o setter style resulta em um comportamento indefinido, incluindo renderizações de mapa desatualizadas e/ou fragmentadas. Veja o exemplo abaixo:

 {.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
 }