Visão geral
Uma interface que representa uma camada de elementos para um conjunto de dados.
O featureType de um GMSDatasetFeatureLayer sempre será GMSFeatureTypeDataset.
Herda GMSFeatureLayer.
Propriedades | |
NSString * | datasetID |
ID do conjunto de dados. | |
BOOL | disponí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
- (NSString*) datasetID [read, assign] |
ID do conjunto de dados.
- (BOOL) disponível [read, assign, inherited] |
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, inherited] |
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 }