Panoramica
Una classe che rappresenta una raccolta di tutte le funzionalità dello stesso elemento GMSFeatureType
, il cui stile può essere sostituito sul client.
A ogni GMSFeatureType
avrà un valore GMSFeatureLayer
corrispondente.
Ereditato da GMSDatasetFeatureLayer.
Funzioni per i membri pubbliche | |
(instancetype) | - initWithFeatureType: |
Crea un'istanza a livello di funzionalità per i test. | |
Proprietà | |
GMSFeatureType | featureType |
Il tipo di elemento associato a questo livello. | |
BOOL | disponibile |
Determina se è disponibile l'elemento GMSFeatureLayer basato sui dati. | |
GMSFeatureStyle *_Nullable(^)(T) | stile |
Stile del blocco da applicare a tutti gli elementi in questo livello. |
Documentazione sulle funzioni dei membri
- (instancetype) initWithFeatureType: | (GMSFeatureType) | featureType |
Crea un'istanza a livello di funzionalità per i test.
Questo metodo deve essere utilizzato solo per i test delle unità. In produzione, le istanze GMSFeatureLayer
devono essere create solo dall'SDK.
Documentazione della proprietà
- (GMSFeatureType) featureType [read, assign] |
Il tipo di elemento associato a questo livello.
Tutte le funzionalità associate al livello saranno di questo tipo.
- (BOOL) disponibile [read, assign] |
Determina se è disponibile l'elemento GMSFeatureLayer
basato sui dati.
Gli stili basati sui dati richiedono la struttura metallica, un ID mappa valido e l'applicazione del tipo di caratteristica. Se NO
, lo stile di GMSFeatureLayer
torna ai valori predefiniti e gli eventi non vengono attivati.
- (GMSFeatureStyle* _Nullable(^ style)(T)) [read, write, assign] |
Stile del blocco da applicare a tutti gli elementi in questo livello.
Il blocco di stile viene applicato a tutte le caratteristiche visibili nell'area visibile quando viene chiamato il setter e viene eseguito più volte per gli elementi successivi che entrano nell'area visibile.
La funzione deve essere deterministica e restituire risultati coerenti quando viene applicata ai riquadri della mappa. Se vengono modificate le specifiche di stile di una funzionalità, è necessario impostare di nuovo style
. La modifica del comportamento del blocco di stile senza chiamare il setter style
produrrà un comportamento indefinito, inclusi rendering inattivi e/o distrutti. Vedi il seguente esempio:
{.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 }