我有一个包含事件列表的表格视图。我现在正在尝试创建一个动态视图,该视图可以根据所点击的事件显示有关所有这些事件的详细信息。我有两个问题是如何创建一个通用的segue,我可以用它来任何表格单元格转到同一个视图,然后在该视图中如何访问将用户带到视图的单元格?
答案 0 :(得分:2)
您将使用didSelectRowAtIndexPath
。首先,在eventToPass
上创建Event
类型的变量ViewController
(或类似的任何类型)。然后,您应该获取代表您的数据的对象,然后将其传递给新的UIViewController
。类似的东西:
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let event = eventsArray[indexPath.row]
self.eventToPass = event
self.performSegueWithIdentifier("EventSegue", sender: self)
}
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
if (segue.identifier == "EventSegue") {
var detailVC = segue.destinationViewController as EventDetailViewController
detailVC.event = eventToPass
}
}
这假设您有一个名为ViewController
的{{1}},其中包含一个名为EventDetailViewController
的属性。在此处,您可以访问新event
上的event
个详细信息。