在用到地图类的sdk,sdk自带的样式必定不能满足开发者的需求,于是开发者不得不进行自定义,由于官方同样是object-c 版语法,不得不将其转为swift语法,以满足项目需求。
新建两个类
swift版实现CustomCalloutView:UIView 自定义气泡view,代码实现如下。
自定义标注swift版代码实现CustomAnnotationView:MAAnnotationView 自定义标注物类
实现方法
//标注物点击事件
override func setSelected(selected:Bool, animated:Bool) {
//在此方法中进行,弹出气泡view(CustomCalloutView),以及在view中添加自己的view
}
实现,点击地图其他位置,移除气泡view
self.calloutView?.removeFromSuperview()
最后别忘记,在此方法中调用父类方法
super.setSelected(selected, animated: animated)
于是,自定义气泡到此结束。
网友评论