在Mapbox iOS SDK上动态更改MGLPointAnnotation图像

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

我有一个应用程序,在其Mapbox上使用iOS SDK地图,并在其上显示标记(MGLPointAnnotation)。

我想在选择时更改标记的图像。

MGLPointAnnotation没有image属性,我试图调用委托方法mapView(mapView, imageForAnnotation annotation)但它没有用。

知道我该怎么办?

谢谢!

ios objective-c swift cocoa-touch mapbox
2个回答
0
投票
  1. 我很确定在添加到地图后没有办法更改注释(除了它是annotationView)
  2. 只有在添加注释时才会调用mapView(mapView, imageForAnnotation annotation)
  3. 你可以做的是使用didselect委托 qazxsw poi

并在同一位置设置一个新的注释,但这次是您想要的图像。然后调用图像注释委托,您可以在其中定义图像

func mapView(_ mapView: MGLMapView, didSelect annotationView: MGLAnnotationView){ //code 
}

以下是客户标记图像的示例:func mapView(_ mapView: MGLMapView, imageFor annotation: MGLAnnotation) -> MGLAnnotationImage? { //code }


0
投票

当您单击其他图像时,我设法更改了图像。

https://www.mapbox.com/ios-sdk/examples/marker-image/
© www.soinside.com 2019 - 2024. All rights reserved.