首页 > 解决方案 > 是否可以选择 MGLPolyLines?- 斯威夫特,地图框

问题描述

是否可以使 MGLPolyLine 可触摸/可选择/具有用户交互?在我的项目中,用户需要触摸折线。之前有人问过这个问题,但它已经过时了大约 2 年。他们(MapBox)是否更新了这个?

标签: swiftswift4mapboxpolylinemglmapview

解决方案


我刚刚检查了一下,看起来这已经实现了,虽然我不确定哪个 Mapbox 版本推出了这个。

如果您看一下简单的 Mapbox 示例Annotation Models,它演示了 MGLPolyline 和间隔的圆形注释,您可以对提供的代码进行简单的修改并亲自查看。演示如下所示:

在此处输入图像描述

如果您查看 viewController 代码,请在多段线创建下方添加几行:

let polyline = CustomPolyline(coordinates: &coordinates, count: UInt(coordinates.count))

polyline.title = "Polyline"               // New line
polyline.subtitle = "Pretty Poly".        // New line

// Set the custom `color` property, later used in the `mapView:strokeColorForShapeAnnotation:` delegate method.
polyline.color = .darkGray

现在您可以点击并查看基本标注:

在此处输入图像描述

此示例继承了 MGLPolyline (CustomPolyline),因此可以稍微更改其外观,但不会改变任何关于可点击性的内容。


推荐阅读