gpt4 book ai didi

ios - 在 Swift 中以编程方式切换选项卡栏失败

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

我想切换标签栏项目 2,但它总是转到项目 1。在日志中,它说它也转到项目 2,但它显示项目 1。我正在使用 segue。 View Controller ![1]

if segue.identifier == Constants.Identifiers.goToWinTabFromSearchMatch {
let tabBarController = segue.destination as! UITabBarController
let navController = tabBarController.viewControllers![1] as! UINavigationController
let controller = navController.topViewController as! WinViewController
}

@IBAction func doneToBackToWinTab(_ sender: Any) {
print("i wana back to the win tab")
performSegue(withIdentifier: Constants.Identifiers.goToWinTabFromSearchMatch, sender: nil)


}

最佳答案

我也对你的代码片段感到困惑,因为它只是声明了一堆常量,你在这里没有执行任何操作。要更改 UITabViewController 中的选项卡,只需使用 selectedIndex 属性(它是一个简单的 Int)。将其设置为有效值,瞧。

但是,您的 if block 中有很多关于可选值的问题。强制解包和访问甚至可能不存在的数组字段只是自找麻烦。我强烈建议您以正确的方式进行操作,并通过 if let 正确解包它们。

即,您的 tabBarController.viewControllers![1] 作为! UINavigationController 实际上就像在明火旁边放一 jar 煤油——你不知道什么时候但它最终会爆炸。

关于ios - 在 Swift 中以编程方式切换选项卡栏失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49203530/

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