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

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

    override func viewDidLoad() {
        //here

    }
 ...

}
更新SWIFT 3

以编程方式创建UITabBarController的一个例子可能是这样的:

首先我们创建一个UIViewControllers,它将是标签栏界面的每个选项卡的内容.对于这个例子,我们只创建一个很简单.

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

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

现在,UITabBarController:

我们创建我们要在标签栏中显示的UIViewControllers的新实例.然后我们为每个我们创建的实例创建一个图标,然后我们创建一个数组,其中包含所有UIViewControllers,它们为选项卡栏界面的每个选项卡指定内容.数组中视图控制器的顺序对应于选项卡栏中的显示顺序.

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;
    }
}

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...