Panoramica
Un corso che rappresenta una raccolta di tutte le funzionalità dello stesso GMSFeatureType
, il cui stile può essere sostituito sul client.
Ogni GMSFeatureType
avrà un GMSFeatureLayer
corrispondente.
Funzioni pubbliche dei membri | |
(instancetype) | - initWithFeatureType: |
Crea un'istanza del livello di caratteristiche per i test. | |
Proprietà | |
GMSFeatureType | featureType |
Il tipo di elemento associato a questo livello. | |
BOOL | disponibile |
Determina se l'elemento GMSFeatureLayer basato sui dati è disponibile. | |
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 del livello di caratteristiche 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.
Tutti gli elementi associati al livello saranno di questo tipo.
- (BOOL) disponibile [read, assign] |
Determina se l'elemento GMSFeatureLayer
basato sui dati è disponibile.
Gli stili basati sui dati richiedono la struttura in metallo, un ID mappa valido e l'applicazione del tipo di elemento. Se NO
, lo stile di GMSFeatureLayer
torna al valore predefinito e gli eventi non vengono attivati.
- (GMSFeatureStyle* _Nullable(^ stile)(T)) [read, write, assign] |
Stile del blocco da applicare a tutti gli elementi in questo livello.
Il blocco di stile viene applicato a tutti gli elementi visibili nell'area visibile quando viene richiamato l'impostazione 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
comporterà un comportamento indefinito, inclusi rendering delle mappe inattivi e/o frammentati. 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 }