gpt4 book ai didi

swift - 如何使用 swift 在 UITabBarController 中以编程方式添加选项卡?

转载 作者:IT王子 更新时间:2023-10-29 05:06:32 28 4
gpt4 key购买 nike

如何从 UIViewController 扩展的任何类以编程方式创建选项卡:

class DashboardTabBarController: UITabBarController {

override func viewDidLoad() {
//here

}
...

}

最佳答案

更新 SWIFT 5

如何以编程方式创建 UITabBarController 的示例如下所示:

首先我们创建UIViewControllers,它将成为标签栏界面每个标签的内容。对于这个例子,我们只创建一个非常简单的。

class Item1ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()

view.backgroundColor = UIColor.green
self.title = "item1"
print("item 1 loaded")
}
}

现在,UITabBarController:

我们创建要在标签栏中显示的 UIViewControllers 的新实例。然后我们为我们创建的每个实例创建一个图标,然后我们创建一个包含所有 UIViewControllers 的数组,这些 UIViewControllers 指定选项卡栏界面的每个选项卡的内容。 数组中 View Controller 的顺序对应标签栏中的显示顺序

class DashboardTabBarController: UITabBarController, UITabBarControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
delegate = self
}

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let item1 = Item1ViewController()
let icon1 = UITabBarItem(title: "Title", image: UIImage(named: "someImage.png"), selectedImage: UIImage(named: "otherImage.png"))
item1.tabBarItem = icon1
let controllers = [item1] //array of the root view controllers displayed by the tab bar interface
self.viewControllers = controllers
}

//Delegate methods
func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool {
print("Should select viewController: \(viewController.title ?? "") ?")
return true;
}
}

关于swift - 如何使用 swift 在 UITabBarController 中以编程方式添加选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26850411/

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