gpt4 book ai didi

mkmapview - MapKit在iOS9上未显示自定义注释图钉图像

转载 作者:行者123 更新时间:2023-12-03 07:54:08 28 4
gpt4 key购买 nike

我的代码在iOS 7到8上运行良好。昨天进行了更新,我的图钉上的自定义图像已替换为标准的图钉图像。
有什么建议?

我的代码:

extension ViewController: MKMapViewDelegate {

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView! {

if annotation is MKUserLocation {
return nil
}

let reuseId = String(stringInterpolationSegment: annotation.coordinate.longitude)

var pinView = mapView.dequeueReusableAnnotationViewWithIdentifier(reuseId) as? MKPinAnnotationView

if pinView == nil {

pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseId)
pinView!.canShowCallout = true
pinView!.image = getRightImage(annotation.title!!)
}

let button = UIButton(type: UIButtonType.DetailDisclosure)
pinView?.rightCalloutAccessoryView = button

return pinView
}
}

获取图像的函数根据名称返回 UIImage:
func getRightImage (shopName:String)-> UIImage{

var correctImage = UIImage()

switch shopName
{
case "Kaisers":
correctImage = UIImage(named: "Kaisers.jpg")!
default:
correctImage = UIImage(named: "sopiconsmall.png")!

}

return correctImage
}

没有 map 看起来像这样:
ios9 without images

最佳答案

代替创建 MKPinAnnotationView ,而创建普通的 MKAnnotationView

MKPinAnnotationView 子类倾向于忽略image属性,因为它被设计为仅显示标准的红色,绿色,紫色图钉(通过pinColor属性)。

当您切换到 MKAnnotationView 时,您也必须注释掉animatesDrop行,因为该属性特定于 MKPinAnnotationView

关于mkmapview - MapKit在iOS9上未显示自定义注释图钉图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32633432/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com