Swift 需要帮助使MKPointAnnotation成为按钮吗

Swift 需要帮助使MKPointAnnotation成为按钮吗,swift,xcode,firebase,Swift,Xcode,Firebase,我不知道如何使MKPointAnnotations成为一个按钮,我希望能够单击弹出窗口将我发送到另一个屏幕 导入UIKit 导入地图套件 进口火基 //构建pinticker 类mapViewController:UIViewController、MKMapViewDelegate{ //类,以便可以将图像添加到点批注 /*类CustomPointAnnotation:MKPointAnnotation{ var-imageName:String! }*/ @ibvar映射:MKMapView!

我不知道如何使MKPointAnnotations成为一个按钮,我希望能够单击弹出窗口将我发送到另一个屏幕

导入UIKit 导入地图套件 进口火基 //构建pinticker 类mapViewController:UIViewController、MKMapViewDelegate{ //类,以便可以将图像添加到点批注 /*类CustomPointAnnotation:MKPointAnnotation{ var-imageName:String! }*/ @ibvar映射:MKMapView! 覆盖func viewDidLoad{ super.viewDidLoad //加载视图时,将地图位置设置为特定位置 让中心位置=CLLocationCoordinate2DMake39.863048,-75.357583 //地图将覆盖的地理位置和纬度 设mapSpan=mkCoordinatesPanlationDelta:0.001,longitudeDelta:0.001 //地图将显示的范围 设mapRange=MKCoordinateRegioncenter:centerLocation,span:mapSpan //我们将在地图上看到什么 self.map.setRegionmapRange,已设置动画:false 添加注释 map.delegate=self 让旋转=180 let regionradius:CLLocationDistance=300.0 设区域=mk坐标区域中心:中心位置,纬度计:区域半径,纵向计:区域半径 //显示贴图已对齐的旋转 map.camera.pitch=旋转; map.setRegionregion,已设置动画:true map.delegate=self map.isUserInteractionEnabled=true //允许用户仍然和地图上的项目交互 让螺距:CGFloat=300 设航向=335.0 摄像机:MKMapCamera? camera=MKMapCameralookingAtCenter:中心位置,from距离:区域半径,俯仰:俯仰,航向:航向 map.camera=camera! //禁用地图上的可单击项 map.isRotateEnabled=false; map.isZoomEnabled=false; map.isScrollEnabled=false; map.showsCompass=false; } //创建注释的功能 私有函数添加注释{ 让parkSpaceOne=MKPointAnnotation 设parkSpaceTwo=MKPointAnnotation 设db=Firestore.Firestore //获取firebase中停车位的所有坐标 db.collectionparkingspace.getDocuments{querySnapshot,出现错误 如果让err=err{ 获取文档时发生printError:\err }否则{ 用于querySnapshot!.documents中的文档{ 如果让coords=document.getcoordinate{ 设点=坐标为!地质点 设lat=点纬度 设lon=点经度 //firebase中spot字段的字符串变量 让spotpone=document.getspot为!字符串 让spotptwo=document.getspot为!字符串 //如果firbase中的点与字符串匹配,则获取坐标,将其添加到注释并放置在地图上 如果spotpone==p1{ parkSpaceOne.title=P1 parkSpaceOne.coordinate=CLLocation坐标2纬度:纬度,经度:经度 self.map.addAnnotationparkSpaceOne } 如果spotptwo==p2,则为else{ parkspace2.title=P2 parkSpaceTwo.coordinate=CLLocationCoordinate2dLat,经度:lon self.map.addAnnotationparkSpaceTwo } } } } } // } } 看一看

您可以检测用户何时选择注释:

func mapView(MKMapView, didSelect: MKAnnotationView)
告诉代理已选择其注释视图之一

以及

func mapView(MKMapView, annotationView: MKAnnotationView, calloutAccessoryControlTapped: UIControl)
告诉代理用户点击了注释视图的一个 附件按钮