我在地图视图中有几个注释。当缩放级别增加时,我希望这些注释看起来更小。我怎么能这样做?
目前我看到this answer其他问题的人说你可以更新与注释相对应的图片,但它并没有解释如何做到这一点。如果我知道如何更新图像,我可以解决我的问题,听取缩放级别更改并更新当前在地图中的所有注释的图像。这是预期的解决方案吗?
答案 0 :(得分:0)
删除和替换注释是一种选择。
另一种选择是使用Runtime Styling API,它允许您根据用户交互动态设置地图样式。您可以创建一个MGLCircleStyleLayer或MGLSymbolStyleLayer,根据缩放级别调整圆的大小。您必须向圈子添加互动,但它可以让您更好地控制注释的显示方式。 This example可以帮助您入门。
为了根据缩放级别更改圆形图层的半径,您可以执行以下操作:
circles.circleRadius = MGLStyleValue(interpolationMode: .exponential,
cameraStops: [5: MGLStyleValue(rawValue: 6),
18: MGLStyleValue(rawValue: 0.5)],
options: nil)
对于符号图层(灯塔图标),您可以调整iconScale
属性。