【问题标题】:Change tab bar in swift programmatically以编程方式快速更改标签栏
【发布时间】:2019-10-04 13:22:22
【问题描述】:

我正在尝试以编程方式更改 didFinishLaunchingWithOptions 方法中的标签栏,但它不起作用,知道吗?

我试过了:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    if let tabBarController = self.window!.rootViewController as? UITabBarController {
                tabBarController.selectedIndex = 0
            }
return true
}

谢谢,

【问题讨论】:

    标签: tabs tabbarcontroller


    【解决方案1】:

    你确定你的根视图控制器是 UITabBarController 吗? 因为您似乎没有输入 if-let。 您是否有一个包含您的标签视图控制器的导航控制器?

    【讨论】:

    • 我有一个 HomeTabBarController 继承自 UITabBarController 的类,我尝试使用 HomeTabBarController 而不是 UITabBarController,但没有成功
    • 是的,它没有进入。
    • 从调试中检查 'self.window!.rootViewController' 是否是 HomeTabBarController 的实例
    • 好的,你使用导航控制器?您可能必须检查导航控制器的子节点(在您的情况下它将是根视图控制器)
    • 在这种情况下,您可以使用此检查stackoverflow.com/questions/42826026/…
    猜你喜欢
    • 2017-01-14
    • 2015-02-13
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多