概览
表示同一 GMSFeatureType
的所有地图项的集合的类,其样式可在客户端上替换。
每个 GMSFeatureType
都有一个对应的 GMSFeatureLayer
。
继承 <GMSFeature>。
公开成员函数 | |
(实例类型) | - initWithFeatureType: |
创建用于测试的地图项图层实例。 | |
(GMSFeatureType) | - featureType |
此地图项的类型。 | |
受保护的属性 | |
__pad0__:NSObject@property(nonatomic) | |
只读 GMSFeatureType | featureType |
属性 | |
GMSFeatureType | featureType |
与此图层相关联的地图项类型。 | |
BOOL | 可用 |
确定数据驱动的 GMSFeatureLayer 是否可用。 | |
GMSFeatureStyle *_Nullable(^ | style )(T) |
要应用到此图层中所有地图项的样式块。 |
成员函数文档
- (instancetype) initWithFeatureType: | (GMSFeatureType) | featureType |
创建用于测试的地图项图层实例。
此方法应仅用于单元测试。在生产环境中,GMSFeatureLayer
实例只能由 SDK 创建。
- (GMSFeatureType) featureType |
此地图项的类型。
成员数据文档
- (GMSFeatureType) featureType [read, assign] |
-(只读 GMSFeatureType)featureType |
属性说明
- (BOOL) 可用 [read, assign] |
确定数据驱动的 GMSFeatureLayer
是否可用。
数据驱动型样式需要使用 Metal 框架、有效的地图 ID 以及要应用地图项类型。如果为 NO
,则 GMSFeatureLayer
的样式会恢复默认值,并且不会触发事件。
- (GMSFeatureStyle* _Nullable(^ style)(T) [read, write, assign] |
要应用到此图层中所有地图项的样式块。
调用 setter 时,样式块会应用于视口中的所有可见地图项,后续地图项进入视口时,该块会多次运行。
该函数必须确定性,并在应用于地图图块时返回一致的结果。如果任何地图项的任何样式规范发生变化,则必须重新设置 style
。在不调用 style
setter 的情况下更改样式块的行为将导致出现未定义的行为,包括过时和/或破碎的地图渲染。请参见下面的示例:
{.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 }