手动(自动)Segue 不工作 - table 查看单元格

Manual (automatic) Segue not working - table view cell

我是 Xcode 的新手,我正在学习教程 here,其中介绍了如何添加手动转场。

https://github.com/AdditionAddict/learnXcode

问题:在模拟器中单击 table 单元格时,不会触发手动转场。

我试过的方法:我添加了一个手动(自动)转场,一个标识符,而教程说的是选择带有结果的单元格在从 table 视图单元格到用餐细节场景的过程中,我继续执行代码部分,但我在 prepare 中的断点仍然没有触发。

    // MARK: - Navigation

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        super.prepare(for: segue, sender: sender)
        
        switch(segue.identifier ?? "") {
            
        case "AddItem":
            os_log("Adding a new meal", log: OSLog.default, type: .debug)
            
        case "ShowDetail":
            // set the meal for the `MealViewController` as the meal selected in the `MealTableViewController`
            os_log("Show detail of a meal", log: OSLog.default, type: .debug)
            
            guard let mealDetailViewController = segue.destination as? MealViewController else {
                fatalError("Unexpected destination, \(segue.destination)")
            }
            guard let selectedMealCell = sender as? MealTableViewCell else {
                fatalError("Unexpected sender, \(String(describing: sender))")
            }
            guard let indexPath = tableView.indexPath(for: selectedMealCell) else {
                fatalError("The selected cell is not being displayed by the table")
            }
            
            let selectedMeal = meals[indexPath.row]
            mealDetailViewController.meal = selectedMeal
            
        default:
            fatalError("Unexpected Segue Identifier")
        }
    }

已检查
如果仅出于调试目的,我在 MealTableViewController.swift 中放置了以下断点,当我单击 table 单元格时没有任何反应:

    override func shouldPerformSegue(withIdentifier identifier: String, sender: Any?) -> Bool {
        return true
    }

这让我觉得 table 细胞没有注册 'selection'。

Table 查看选择 属性 是单选。

自定义 MealTableViewCell 已检查 User Interaction Enabled

单击大纲窗格中的 MealTableViewCell 并在实用程序窗格中选择连接检查器也会显示 segue:

Final bits: 是否仍然可以添加手动(自动)转场?
教程在存档中,我已经通过一些小的改动设法跟上了其中的大部分内容。
使用 Xcode 11.6

编辑/回答评论问题

  1. 添加(自动)到手动。我的意思是本教程使用的方法从 table 细胞到膳食细节。
  2. table(据我所知)前面没有任何东西,例如点击手势识别器
  3. Plus segue 起作用并触发 prepare 不同于单击 table 单元格

问题是您不小心禁用了 table 视图 的用户交互。 (当我 运行 项目并发现我无法滚动 table 视图或单击任何星星来更改评级时,我就知道这是问题所在。)

查看此屏幕截图的底部。您需要确保像屏幕截图中那样 选中 已启用用户交互。在您的项目中,它不是。因此整个table是“不可触碰的”。