单击时 MapView 自定义引脚不显示详细信息
Posted
技术标签:
【中文标题】单击时 MapView 自定义引脚不显示详细信息【英文标题】:MapView custom pins not displaying details when clicked 【发布时间】:2015-10-07 10:08:26 【问题描述】:我正在尝试在 MapView 上显示一系列地点名称的结果。使用常规图钉不是问题:它们正常显示,单击时,详细信息单元格会显示该地点的名称。
for var t = 0;t<self.parties2.count;++t
var placeLatitude:CLLocationDegrees = self.parties2[t].latitude
var placeLongitude:CLLocationDegrees = self.parties2[t].longitude
var placeLocation = CLLocationCoordinate2DMake(placeLatitude, placeLongitude)
var annotation = MKPointAnnotation()
annotation.coordinate = placeLocation
annotation.title = self.parties2[t].name
self.mapView.addAnnotation(annotation)
然后我用这个函数改变了引脚的外观:
func mapView(mapView: MKMapView!, viewForAnnotation annotation: MKAnnotation!) -> MKAnnotationView!
let identifier = "pin"
var view: MKAnnotationView
view = MKAnnotationView(annotation: annotation, reuseIdentifier: identifier)
var image = UIImage(named: "symbol.png")
image = self.imageResize(image!, sizeChange: CGSizeMake(20, 20))
view.image = image
return view
(我使用 imageResize 函数调整 pin 图像的大小)
这个函数成功地改变了大头针的外观:它确实变成了想要的图像。但是,单击这些图像不再显示详细信息。
【问题讨论】:
【参考方案1】:好的,我只需要将 pinView.canShowCallout = true 添加到我的代码中,我认为默认情况下它是 true,因为原始 pin 不需要它。
【讨论】:
以上是关于单击时 MapView 自定义引脚不显示详细信息的主要内容,如果未能解决你的问题,请参考以下文章
带有默认地图视图引脚的 Swift Mapview 自定义调出视图