ios - 如何在 Swift iOS 中更改 MKUserLocation 注释中的默认图像

标签 ios swift mkmapview mkannotation mkannotationview

我的应用程序中有一个显示用户位置的 map View 。当点击用户的位置时,图像显示如下:

enter image description here

有没有办法根据我的喜好定制这张图片,例如我想显示用户在他自己的个人资料中的照片,或者我想添加的任何其他静态图片。

类似于苹果 map 在您的位置点中显示您的头像的方式。

我怎么能在这里做到这一点?

这是我的代码:

 func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
       if annotation is MKUserLocation {
        print("user location image tapped")
        
           return nil
       }

       let reuseId = "pin"
       var pinView = mapView.dequeueReusableAnnotationView(withIdentifier: reuseId) as? MKPinAnnotationView
       if pinView == nil {
           pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseId)
           pinView?.animatesDrop = true
           pinView?.canShowCallout = true
           pinView?.isDraggable = true
        
         //  pinView?.pinColor = .purple

           let rightButton: AnyObject! = UIButton(type: UIButton.ButtonType.detailDisclosure)
           pinView?.rightCalloutAccessoryView = rightButton as? UIView
   
       }
       else {
           pinView?.annotation = annotation
       }
       
       return pinView
   }

有什么帮助吗?谢谢。

最佳答案

let imageView = UIImageView(frame: CGRect(0, 0, 25, 25))
imageView.image = UIImage(named: "userpic");
imageView.layer.cornerRadius = imageView.layer.frame.size.width / 2
imageView.layer.masksToBounds = true
anotationView.frame = imageView.frame

关于ios - 如何在 Swift iOS 中更改 MKUserLocation 注释中的默认图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64142912/

相关文章:

ios - 从内部 block 返回值(Objective-C)

objective-c - ASIHTTPRequestErrorDomain 代码=8。无法将文件从临时目录移动到文档

swift - NSDate 快速设置时区

swift - 如果我的类位于另一个类中,如何访问该变量的属性?

Swift MapView 未向 Map 添加注释

swift - MapView 显示所有注释并尽可能放大 map

opengl-es - IOS 6 MKMapView 在 [EAGLContext setCurrentContext] 上崩溃

ios - 如何通过 Storyboard向 UIButton 添加 subview ?

ios - Xcode 7/Swift : Save value of slider and send to child class when view changes

ios - 在 Realm 下载内容时如何更新 progressView