我有一个UINavigationController。它有它的主视图控制器,它包含一个滚动视图,然后有两个表视图和一个按钮。如果我将按钮设置为pushViewController,则可以正常工作。如果我将任何一个tableviews设置为didSelectRow上的pushViewController,则没有任何反应。我通过让tableViews打开self.navigationController进行测试,并打印出nil,所以我知道由于某种原因它没有正确地继承导航控制器。
这很快。我可以让这个工作正常,在ObjC完全相同的方式没问题。
答案 0 :(得分:1)
您可以覆盖tableview的功能
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let YourVC = YourViewController();
YourVC.data = self.data[indexPath.section][indexPath.row];
self.navigationController?.pushViewController(YourVC, animated: true);
}