我正在尝试将数据从表视图单元格传递到选项卡视图控制器,以供选项卡视图控制器的相应视图使用。但是,没有调用下面的覆盖func prepare
方法,程序将完全绕过此方法进入选项卡视图控制器。
显示视图的情节提要
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let selectedCarIndex = self.savedCarsTableVC.indexPathForSelectedRow?.row
let destVC = segue.destination as! TabBarController
destVC.selectedCar = savedCars[selectedCarIndex!]
}
我希望selectedCar
对象从数组返回数据,但它nil
.
我会尝试在tableView didSelectRow方法中设置selectedCarIndex。 另外,请确保您要导航到 TabBarController 而不是嵌入在 TabBar 中的某些 ViewController。
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath) {
self.performSegue(withIdentifier: "youridentifier", sender: indexPath)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let selectedCarIndex = sender as! IndexPath
let destVC = segue.destination as! TabBarController //Are you sure this is the correct ViewController to be casting to?
destVC.selectedCar = savedCars[selectedCarIndex.row]
}