Ios Swift-将数据从tableview传递到第三个viewcontroller
我有太多的代码,无法将其全部粘贴进去,所以我会含糊其辞。我想我只需要大致知道该做什么,然后我就能做到 我有一张漂亮的桌子,上面有当地企业的名单。当您单击一个时,它会打开DetailView,其中包含一些有关业务的重要信息。我在DetailView上有一个MAP按钮,它会触发Thirdview,其中有一个Mapview 我在从第三个视图的TableView中的单元格检索数据时遇到问题 我的看法: Tableview=>DetailView=>Thirdview 在我的第三个视图中,我可以调用Tableview中的信息吗 或者更容易将信息从DetailView传递到Thirdview 谢谢 表视图Ios Swift-将数据从tableview传递到第三个viewcontroller,ios,swift,uitableview,segue,Ios,Swift,Uitableview,Segue,我有太多的代码,无法将其全部粘贴进去,所以我会含糊其辞。我想我只需要大致知道该做什么,然后我就能做到 我有一张漂亮的桌子,上面有当地企业的名单。当您单击一个时,它会打开DetailView,其中包含一些有关业务的重要信息。我在DetailView上有一个MAP按钮,它会触发Thirdview,其中有一个Mapview 我在从第三个视图的TableView中的单元格检索数据时遇到问题 我的看法: Tableview=>DetailView=>Thirdview 在我的第三个视图中,我可以调用Tab
var objects: [MyObject] = []
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let myObject = objects[indexPath.row]
}
override func prepare(for segue: UIStoryboardSegue, sender: Any) {
if segue.identifier == "mySegue" {
let detailVC = segue.destination as! MyDetailVC
detailVC.dataFromTableView = myObject
}
}
详细视图
var dataFromTableView = MyObject()
override func prepare(for segue: UIStoryboardSegue, sender: Any) {
if segue.identifier == "mySegue" {
let thirdVC = segue.destination as! MyThirdViewController
thirdVC.dataFromDetailView = dataFromTableView
}
}
第三视图
var dataFromDetailView = MyObject()
override func viewDidLoad() {
print(dataFromDetailView)
}
我会将数据传递到详细视图,然后在
prepareforsgue
中,将数据传递到第三个视图。明白了。所以prepareForSegue是最好的选择。我想我需要弄清楚在准备室里放什么。有什么建议吗@dstepanI将发布一个答案,该答案将为您解答。请参阅下面我的答案。如果数据总是相同的,您也可以创建一个单例,但这可能不是最适合您的方法。这取决于派生的数据,如果tableView控制器中的数据需要显示在第三个viewController中而不需要显示在第二个viewController中,则无需让第二个viewController显示(详细信息viewController)来保存它。有几种方法可以实现这一点,委派可能是一个不错的选择。你太棒了。一旦我知道如何将你所有的变量转换为我的:)@dstepan