检查tabBar是否为零

时间:2015-02-11 10:00:56

标签: ios objective-c swift tabbar

我试图查看我的TabBar是否为零。

在Objective-C中我会这样做:

if(self.tabBar != nil){
}

如果我在swift中尝试对我这样做,则会返回此错误:

' UITabBar'不是' NSString'

的子类型

这是我必须在整个swift中编写的代码:

override func viewDidLayoutSubviews() {
    //check tabBar not null
    if (self.tabBar != nil)
    {
        //make changes in frame here according to orientation if any
        self.tabBar.frame = CGRect(x: 00, y: 20, width:self.view.bounds.size.width, height: 49)
    }
}

2 个答案:

答案 0 :(得分:2)

viewController的tabBarController是可选的。 tabBar内的UITabBarController不是可选的。因此,您可以尝试:

override func viewDidLayoutSubviews() {
        if let tabBarController = self.tabBarController {
            // use your tabBarController
            tabBarController.tabBar // the tabBar in the tabBarController is not an optional
        }
    }

答案 1 :(得分:0)

尝试,

let tabBar: UITabBar?
tabBar =  //initialize tabBar
if tabBar != nil {

}

希望这有帮助