以编程方式设置ios tabbar项

时间:2017-05-23 16:59:36

标签: ios swift uitabbaritem

我有四个标签项,我通过故事板设置但我只有一个标签栏,我想以编程方式设置,因为我希望最后一个标签栏项目是我的个人资料图片。有没有办法我可以在ProfileViewController中以编程方式设置一个标签栏项,而无需以编程方式设置其他三个标签栏项。

我想将其设置为tabbar项目,但它是空白的:

override func awakeFromNib() {

        super.awakeFromNib()
        self.tabBarItem.title = "MY ACCOUNT"
      //  self.tabBarItem.image = UIImage(named: "Speech Bubble Filled-50")

        if let postProfile = self.loggedInUserUid {

            let imageRef = FIRStorage.storage().reference().child((loggedInUserUid)!+"/profile_pic.jpg")

            imageRef.data(withMaxSize: 1 * 1024 * 1024, completion: { (data, error) -> Void in
                if error != nil {
                    print(error)
                    return
                }
                DispatchQueue.main.async(execute: { () -> Void in
                    let image = UIImage(data: data!)
                    self.tabBarItem.image = image
                })

            }).resume()
}}

1 个答案:

答案 0 :(得分:5)

视图控制器可以在从故事板加载后设置自己的选项卡图像。您可以在awakeFromNib

中执行此操作
class SecondViewController: UIViewController {

    override func awakeFromNib() {
        super.awakeFromNib()
        self.tabBarItem.image = UIImage(named: "star")
    }

}

结果:

tab bar with star image

你可能想做一个比调整图像更好的工作......