如何从didSelectRowAt执行segue

时间:2019-05-23 12:55:12

标签: ios swift segue

我被这个简单的任务所困扰,无法从选定的单元格执行搜索。

我已经创建了一个从ViewController到另一个的标识符为“ showDetails”的序列。比我尝试以下代码:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    performSegue(withIdentifier: "showDetails", sender: self)
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "showDetails",
    let destination = segue.destination as? DetailsViewController {
        let indexPath = tableView.indexPathForSelectedRow!
        destination.rideIndex = indexPath.row
    }
}

显然它不起作用。我在做什么错了?

1 个答案:

答案 0 :(得分:0)

检查UITableView委托,并确保将segue设置为“以模态显示或显示”,然后:

es5

但是我个人更喜欢以下代码来打开UIViewController:

Array.includes

并确保您的DetailsViewController具有标识符“ DetailsViewController”