Odniesienie klasy GMSFeatureLayer

Odniesienie do klasy GMSFeatureLayer

Przegląd

Klasa reprezentująca zbiór wszystkich cech tego samego elementu GMSFeatureType, którego styl można zastąpić po stronie klienta.

Każdemu elementowi GMSFeatureType będzie odpowiadać jeden element GMSFeatureLayer.

Publiczne funkcje członków

(typ instancji)initWithFeatureType:
 Tworzenie instancji warstwy cech do testowania.

Usługi

GMSFeatureTypefeatureType
 Typ obiektu powiązany z tą warstwą.
BOOLdostępne
 Określa, czy oparty na danych GMSFeatureLayer jest dostępny.
GMSFeatureStyle *_Nullable(^)(T)styl
 Blok stylu, który zostanie zastosowany do wszystkich obiektów w tej warstwie.

Dokumentacja funkcji członka

- (typ instancji) initWithFeatureType: (GMSFeatureType) featureType

Tworzenie instancji warstwy cech do testowania.

Tej metody należy używać tylko do testów jednostkowych. W środowisku produkcyjnym instancje GMSFeatureLayer powinny być tworzone tylko przez pakiet SDK.


Dokumentacja usługi

- (GMSFeatureType) featureType [read, assign]

Typ obiektu powiązany z tą warstwą.

Wszystkie obiekty powiązane z warstwą będą tego typu.

- (BOOL) dostępne [read, assign]

Określa, czy oparty na danych GMSFeatureLayer jest dostępny.

Styl oparty na danych wymaga platformy Metal Framework, prawidłowego identyfikatora mapy oraz zastosowania typu cechy. Jeśli NO, styl elementu GMSFeatureLayer wraca do wartości domyślnej, a zdarzenia nie są wyzwalane.

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

Blok stylu, który zostanie zastosowany do wszystkich obiektów w tej warstwie.

Blok stylu jest stosowany do wszystkich elementów widocznych w widocznym obszarze po wywołaniu metody ustawiającej i jest wywoływany wiele razy dla kolejnych obiektów wchodzących w jej obszar.

Funkcja musi być deterministyczna i zwracać spójne wyniki, gdy zostanie ona zastosowana do fragmentów mapy. Jeśli ulegną zmianie jakiekolwiek specyfikacje stylu, należy ponownie ustawić style. Zmiana działania bloku stylów bez wywoływania metody ustawiającej style spowoduje niezdefiniowane zachowanie, w tym nieaktualne lub rozbicie renderowania mapy. Zobacz ten przykład:

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