将数据传递给 MapDetailViewController
Pass data to MapDetailViewController
我的地图上有注释。我想在用户点击 AccessoryControl 并将数据传递给该视图控制器时打开一个新的视图控制器。
所以我这样做:
func mapView(mapView: MKMapView, annotationView view: MKAnnotationView, calloutAccessoryControlTapped control: UIControl) {
self.performSegueWithIdentifier("Details", sender: view)
}
然后:
if segue.identifier == "Details" {
let placeDetailViewController = segue.destinationViewController as! PlaceDetailViewController
let place: Place = places[?index?]
placeDetailViewController.place = place
}
所以我想获取我的注释的索引,但不知道该怎么做。
求助。谢谢
您需要在 prepareForSegue:
中完成
override func prepareForSegue(segue: UIStoryboardSegue?, sender: AnyObject?) {
if segue!.identifier == "Details" {
let vc = segue!.destinationViewController as PlaceDetailViewController
vc.data = "YOUR_DATA_HERE"
}
}
我的地图上有注释。我想在用户点击 AccessoryControl 并将数据传递给该视图控制器时打开一个新的视图控制器。
所以我这样做:
func mapView(mapView: MKMapView, annotationView view: MKAnnotationView, calloutAccessoryControlTapped control: UIControl) {
self.performSegueWithIdentifier("Details", sender: view)
}
然后:
if segue.identifier == "Details" {
let placeDetailViewController = segue.destinationViewController as! PlaceDetailViewController
let place: Place = places[?index?]
placeDetailViewController.place = place
}
所以我想获取我的注释的索引,但不知道该怎么做。
求助。谢谢
您需要在 prepareForSegue:
中完成override func prepareForSegue(segue: UIStoryboardSegue?, sender: AnyObject?) {
if segue!.identifier == "Details" {
let vc = segue!.destinationViewController as PlaceDetailViewController
vc.data = "YOUR_DATA_HERE"
}
}