【发布时间】:2014-12-18 03:54:43
【问题描述】:
所以在我的故事板文件中,我有一个从一个 UITableViewController 转到另一个的 segue,这样当用户点击单元格时,它会打开下一个表格。没什么特别的。但是当他们点击单元格时,我需要指定要加载到下一个视图中的数据。我在 didSelectRowAtIndexPath 中执行此操作。根据 indexPath.row,我在 prepareForSegue 函数中设置分配给详细表视图的变量的值。我将视图控制器加载为let detailViewController = segue.destinationViewController as DetailTableViewController 中的变量。从这里使用分配功能设置数据。但是,当我点击表格时,数据不会显示,直到我按下并再次点击它。基本上数据是在 segue 之后分配的......我如何分配数据并在之后执行 segue?
编辑
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
switch indexPath.row {
case 0:
self.passedInfo = self.infoOne;
break
case 1:
self.passedInfo = self.infoTwo;
break
case 2:
self.passedInfo = self.infoThree;
break
default:
break;
}
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
let detailViewController = segue.destinationViewController as DetailTableViewController
let destinationTitle = "Detail View"
detailViewController.title = destinationTitle
self.passedScores.sort{$0 > $1};
detailViewController.setData(self.passedInfo);
}
【问题讨论】:
标签: ios uitableview swift segue