热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MKAnnotationView图层不是预期类型:MKLayer

如何解决《MKAnnotationView图层不是预期类型:MKLayer》经验,为你挑选了1个好方法。

所以我的代码工作正常,但我的记录器充满了这个消息.有没有办法摆脱它或抑制它?

PostAnnotation.swift

class PostAnnotation: MKPointAnnotation {

    //MARK: properties
    let post: Post

    //MARK: initialization
    init(post: Post) {
        self.post = post
        super.init()
        self.coordinate = CLLocationCoordinate2D(latitude: post.latitude, longitude: post.longitude)
        self.title = post.title
        self.subtitle = post.timeString()
    }

}

添加注释

let annotation = PostAnnotation(post: post)
self.map.addAnnotation(annotation)

func mapView

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {

    if annotation is MKUserLocation {
        return nil
    }

    var annotatiOnView= mapView.dequeueReusableAnnotationView(withIdentifier: "pin") as? MKPinAnnotationView
    if annotatiOnView== nil {
        annotatiOnView= MKPinAnnotationView(annotation: annotation, reuseIdentifier: "pin")
    } else {
        annotationView?.annotation = annotation
    }

    if let annotation = annotation as? PostAnnotation {
        annotationView?.pinTintColor = UIColor.blue
        annotationView?.canShowCallout = true
        annotationView?.rightCalloutAccessoryView = UIButton(type: .infoLight)
        annotationView?.animatesDrop = true
    }

    return annotationView
}

删除此功能将删除该消息



1> DrMickeyLaue..:

这是iOS 11中的一个错误,因为MKLayer它不是公共类.

我只是忽略了这条消息,但如果它困扰你:要使这个警告静音,你可以OS_ACTIVITY_MODE=disable在方案的环境页面中进行设置.请注意,您也会沉默其他操作系统警告.

方案编辑


推荐阅读
author-avatar
承志68694849
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有