Reputation:
How can I pass the data of Custom
annotation? I use this function to perform segue:
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {}
class Custom: MKPointAnnotation {
var name: String?
var time: String?
var address: String?
}
Upvotes: 0
Views: 282
Reputation: 100543
You can try
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
let anno = view.annotation as! Custom
print(anno.name)
// then access the properties of anno and use them for the segue
self.performSegue(withIdentifier:"SegueID",sender:anno)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "SegueID" {
let des = segue.destination as! SecondVC
des.ann = sender as! Custom
}
}
class SecondVC:UIViewController {
@IBOutlet weak var lbl:UILabel!
var ann:Custom!
override func viewDidLoad() {
super.viewDidLoad()
self.lbl.text = ann.name
}
}
Upvotes: 1