gpt4 book ai didi

ios - 将数据从 ViewController 传递到现在是 TabBarController 一部分的 Viewcontroller

转载 作者:可可西里 更新时间:2023-11-01 01:26:32 24 4
gpt4 key购买 nike

所以我有 2 个 View Controller ,它们现在已成为 TabBarController 的一部分。我只是通过以下方式将变量“selectedPack”从 vc A 传递到 vc B:

let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let transportJourneyViewController = storyBoard.instantiateViewController(withIdentifier: "JourneyViewController") as! JourneyViewController
transportJourneyViewController.selectedPack = self.packArray[indexPath.item].packID
self.present(transportJourneyViewController, animated:true, completion:nil)

但是现在 vc B 或 JourneyViewController 是 TabBarController 的一部分,我需要用类似的东西来改变它:

let tbc = self.storyboard!.instantiateViewController(withIdentifier: "MyTabController") as! UITabBarController
tbc.selectedIndex = 1
self.present(tbc, animated: true, completion: nil)

我遇到的问题是尝试将数据传递给变量“selectedPack”,如第一个代码块所示,因为该变量不存在于“tbc.selectedIndex = 1”中,它存在于“JourneyViewController”中。我感到困惑,因为我认为即使它是 tabbarcontroller 的一部分,当你改变时,你正在改变到那个 viewcontroller,这显然不是这种情况,即使那是你所看到的。

最佳答案

你可以试试下面的方法

let tbc = self.storyboard!.instantiateViewController(withIdentifier: "MyTabController") as! UITabBarController
tbc.selectedIndex = 1

// Suppose your viewcontroller is at tab bar first index.
let transportJourneyViewControllerOBJ = tbc.viewControllers?[0] as! ViewController
transportJourneyViewControllerOBJ.strValue = "Testvalue"
self.present(tbc, animated: true, completion: nil)

关于ios - 将数据从 ViewController 传递到现在是 TabBarController 一部分的 Viewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41338945/

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