概要
同じ GMSFeatureType
のすべての対象物のコレクションを表すクラスで、そのスタイルはクライアントでオーバーライドできます。
各 GMSFeatureType
に対応する GMSFeatureLayer
が 1 つあります。
<GMSFeature> を継承します。
パブリック メンバー関数 | |
(instancetype) | - initWithFeatureType: |
テスト用の対象物レイヤ インスタンスを作成します。 | |
(GMSFeatureType) | - featureType |
この対象物のタイプ。 | |
保護された属性 | |
__pad0__: NSObject@property(non を高める | |
readonly GMSFeatureType | featureType |
プロパティ | |
BOOL | 利用可能 |
データドリブン GMSFeatureLayer を使用できるかどうかを判断します。 | |
GMSFeatureStyle *_Nullable(^ | style )(T) |
このレイヤ内のすべての対象物に適用するスタイル ブロック。 |
メンバー関数のドキュメント
-(インスタンス タイプ)initWithFeatureType: | (GMSFeatureType) | featureType |
テスト用の対象物レイヤ インスタンスを作成します。
このメソッドは単体テストでのみ使用してください。本番環境では、GMSFeatureLayer
インスタンスは SDK のみで作成する必要があります。
-(GMSFeatureType)featureType |
この対象物のタイプ。
メンバーデータに関するドキュメント
- GMSFeatureLayer: |
- (読み取り専用の GMSFeatureType)featureTypefeatureType |
プロパティのドキュメント
- (BOOL)利用可能 [read, assign] |
データドリブン GMSFeatureLayer
を使用できるかどうかを判断します。
データドリブン スタイル設定には、Metal Framework、有効なマップ ID、対象物タイプが適用されていることが必要です。NO
の場合、GMSFeatureLayer
のスタイルはデフォルトに戻り、イベントはトリガーされません。
- (GMSFeatureStyle* _Nullable(^ style)(T)) [read, write, assign] |
このレイヤ内のすべての対象物に適用するスタイル ブロック。
スタイル ブロックは、セッターが呼び出されるとビューポートに表示されるすべての対象物に適用され、それ以降の対象物がビューポートに入るときにも複数回実行されます。
この関数は決定論的であり、地図タイルに適用したときに一貫した結果を返す必要があります。対象物のスタイル設定が変更される場合は、style
を再度設定する必要があります。style
セッターを呼び出さずにスタイル ブロックの動作を変更すると、地図の古いレンダリングや破損など、未定義の動作が発生します。下記の例をご覧ください。
{.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 }