配置标记冲突行为

请选择平台: Android iOS JavaScript

您可以自定义添加到 3D 地图中的标记的碰撞行为。

显示标记冲突行为的地图视图

以下代码示例演示了如何配置 Marker 结构的 collisionBehavior,以指定某个标记与其他标记或地图标签冲突时的行为方式。

Swift

Map(camera: $camera, mode: .hybrid) {
  Marker(
     position: .init(
        latitude: 37.794724,
        longitude:  -122.39442,
        altitude: 100.0),
      altitudeMode: .relativeToMesh,
      collisionBehavior: .optionalAndHidesLowerPriority,
      extruded: true,
      label: "Marker 1"
    )
          
    Marker(
      position: .init(
          latitude: 37.7943220,
          longitude: -122.395073,
          altitude: 100.0),
      altitudeMode: .relativeToMesh,
      collisionBehavior: .required,
      extruded: true,
      label: "Marker 2"
    )
          
    Marker(
      position: .init(
          latitude: 37.7934108,
          longitude: -122.396144,
          altitude: 100.0),
      altitudeMode: .relativeToMesh,
      collisionBehavior: .requiredAndHidesOptional,
      extruded: true,
      label: "Marker 3"
    )
}