如何在具有5个以上视图控制器的选项卡栏控制器上手动调用选项卡索引?
我尝试手动调用选项卡索引,但它似乎不起作用。我有一个带有6个视图控制器的tabview控制器。我正在使用selectedIndex调用特定的选项卡。在iPhone上,这适用于前4个选项卡,但不适用于选项卡5和6。它在iPad上运行良好。
这是我正在使用的:
let getViewController = self.storyboard?.instantiateViewController(withIdentifier: "tabBar") as! UITabBarController
getViewController.selectedIndex = 5
self.navigationController?.present(getViewController, animated: true)
这会导致选项卡栏显示第一个选项卡,而不是预期的第6个选项卡。因为它在iPad上工作得很好,所以我假设"More“选项卡使tabindex不能工作
任何帮助都将不胜感激!
发布于 2018-06-08 04:13:31
调用selectedViewController
而不是selectedIndex
。
发布于 2018-06-08 04:20:12
这可能是因为视图尚未加载,因此尚未设置IBOutlets和子视图控制器。
您可以在设置selectedIndex之前尝试调用getViewController.loadViewIfNeeded()
。或者创建一个扩展UITabBarController
的类,并在viewDidLoad
中设置所需的selectedIndex
。
我今天一直在使用UITabBarController
,使用selectedIndex
没有任何问题。
https://stackoverflow.com/questions/50749442
复制相似问题