GMSDatasetFeatureLayer クラス リファレンス

GMSDatasetFeatureLayer クラス リファレンス

概要

データセットの地図のレイヤを表すインターフェース。

GMSDatasetFeatureLayer の featureType は、常に GMSFeatureTypeDataset となります。

GMSFeatureLayer を継承します。

プロパティ

NSString * datasetID
 データセットの ID。
BOOL 利用可能
 データドリブンの GMSFeatureLayer を使用できるかどうかを決定します。
GMSFeatureStyle *_Nullable(^)(T)スタイル
 このレイヤ内のすべての対象物に適用されるスタイル設定ブロック。

メンバー関数のドキュメント

- (instancetype) initWithFeatureType: (GMSFeatureType) featureType

テスト用の対象物レイヤ インスタンスを作成します。

このメソッドは単体テストにのみ使用してください。本番環境では、GMSFeatureLayer インスタンスは SDK でのみ作成する必要があります。


プロパティのドキュメント

- (NSString*) datasetID [read, assign]

データセットの ID。

- (BOOL) 利用可能 [read, assign, inherited]

データドリブンの GMSFeatureLayer を使用できるかどうかを決定します。

データドリブンのスタイル設定を使用するには、Metal Framework、有効なマップ ID、対象物タイプを適用する必要があります。NO の場合、GMSFeatureLayer のスタイルはデフォルトに戻り、イベントはトリガーされません。

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

このレイヤ内のすべての対象物に適用されるスタイル設定ブロック。

セッターが呼び出されると、ビューポート内のすべての表示可能な対象物にスタイル ブロックが適用され、ビューポートに入る後続の対象物に対してそのスタイル ブロックが複数回実行されます。

この関数は、決定論的で、マップタイルに適用されたときに一貫した結果を返す必要があります。対象物のスタイリング仕様を変更する場合は、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
 }