我有一个视图,该视图的底部有一个标签栏。现在,我想基于iPhone和iPad更改选项卡栏的项目(即,iPhone和iPad的订单不同)。
在viewDidLoad
中,如果我执行类似self.viewControllers.count
的操作,则会得到正确数量的标签栏。但是如何从那里着手以更改标签栏项目的顺序,我不知道。我的意思是我该如何获取每个ViewController的索引,以便重新排列他们不知道的索引...
答案 0 :(得分:0)
您可以以编程方式定义标签栏。但是首先,您应该为故事板上的标签页视图设置一个ID,如图所示:
在AppDelegate
,didFinishLaunchingWithOptions
方法中:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
// change "Main" if your storyboard's filename is different.
let vc1 = storyboard.instantiateViewController(withIdentifier: "vc1")
let vc2 = storyboard.instantiateViewController(withIdentifier: "vc2")
let tab = UITabBarController()
if UIDevice.current.model.lowercased() == "iphone" {
tab.viewControllers = [vc1, vc2]
} else {
tab.viewControllers = [vc2, vc1]
}
window?.rootViewController = tab