Swift - 在点击TableViewCell时打开ViewController

时间:2018-02-15 18:53:11

标签: ios swift uitableview uiviewcontroller

我有一个包含相同单元格的tableView。选择其中之一后,我想打开另一个ViewController。 我试过这段代码:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath) {

    let destination = EditViewController()
    navigationController?.pushViewController(destination, animated: true)

}

但它没有打开另一个ViewController。 你能给我一个暗示吗?

2 个答案:

答案 0 :(得分:0)

很可能你只是没有navigationController - 使用而不是present来显示viewController:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath) {
    let destination = EditViewController()
    self.present(destination, animated: true, completion: nil)
}

或者,如果您想要推送viewController,请确保将tableViewController嵌入UINavigationController

答案 1 :(得分:0)

只需进入你的故事板,选择你启动视图控制器,然后点击编辑器>嵌入并选择导航控制器,然后您的代码将工作。这意味着您已从初始视图控制器为视图控制器设置了导航堆栈。