如何使MGLPolyline tapable?

问题描述 投票:2回答:2

我目前正在寻找一种方法,使路线(MGPLPolyline)可点击,从而使得用户可以Mapbox在两种可能的路径选择。不幸的是,路线标注似乎并没有成为可点击在所有:

虽然我已经设定了正确我MGLMapViewDelegate此方法:

func mapView(_ mapView: MGLMapView, didSelect annotation: MGLAnnotation)

永远不会调用。

我错过了什么知道每行从MGLPolyline这是一个MGLAnnotation的子类(我预计是可点击...)继承。

ios swift mapbox
2个回答
0
投票

该Mapbox iOS的API不支持呢,很遗憾。 See here

有一对夫妇的链路中的解决方法,你可以尝试的,虽然。

更新:现在这是可能的:Check here


0
投票

你可以做到以下几点:

首先,当你创建折线做到以下几点:

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

polyline.title = "" //It does not seem to matter what you set it to.

polyline.color = .darkGray

然后在下面的方法返回false:

 func mapView(_ mapView: MGLMapView, annotationCanShowCallout annotation: MGLAnnotation) -> Bool {
    // Always allow callouts to popup when annotations are tapped.
    print("ran?")
    return false
}
© www.soinside.com 2019 - 2024. All rights reserved.