如何在具有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上工作正常,我认为“更多”选项卡使tabindex不起作用
非常感谢任何帮助!
答案 0 :(得分:0)
致电selectedViewController
而非selectedIndex
。
答案 1 :(得分:0)
可能是因为视图尚未加载,因此尚未设置IBOutlets和子视图控制器。
您可以在设置selectedIndex之前尝试调用getViewController.loadViewIfNeeded()
。或者创建一个扩展UITabBarController
的类,并在viewDidLoad
中设置所需的selectedIndex
。
我今天一直在使用UITabBarController
并使用selectedIndex
而没有任何问题。