gpt4 book ai didi

ios - 在动态值 TableView 中使用 performSeguewithIdentifier 函数

转载 作者:行者123 更新时间:2023-11-28 12:30:11 27 4
gpt4 key购买 nike

我可以在表格 View 中列出数据。当我选择一行并尝试传递另一个 View Controller 以显示与我按下的单元格相关的特定数据时,它无法成功。我无法在 prepareforsegue 函数中存储数据“selectedMeal”变量,它总是返回 [ ]。我认为,我的主要问题是选择单元格并发送到该单元格以准备 segue 功能。可能是 DispatchQueue.main.async 函数有问题。

*当我尝试传递静态数据时,效果很好。

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

if let cell = tableView.cellForRow(at: indexPath) {
cell.accessoryType = .checkmark;

DispatchQueue.main.async {
self.performSegue(withIdentifier: "gotoOrderDetail", sender: self)
}
}
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

if (segue.identifier == "gotoOrderDetail") {
let DestViewController : OrderDetailListViewController = segue.destination as! OrderDetailListViewController
let selectedMeal = selectedCells.map { (index: Int) -> SavedMeal in
return savedMeal[index]
}
DestViewController.mealarray = selectedMeal
}
}

最佳答案

尝试使用这段代码

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

if (segue.identifier == "gotoOrderDetail") {
let DestViewController : OrderDetailListViewController = segue.destination as! OrderDetailListViewController
let path = self.tableView.indexPathForSelectedRow()! // get the selected indexPath
DestViewController.mealarray = savedMeal[path.row]
}
}

关于ios - 在动态值 TableView 中使用 performSeguewithIdentifier 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42250761/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com