检查 tabBar 是否为 nil

Check if tabBar is nil

我正在尝试查看我的 TabBar 是否为零。

在Objective-C我会这样做:

if(self.tabBar != nil){
}

如果我在 swift returns 中尝试对我执行此操作,则会出现此错误:

'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)
    }
}

试试,

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

}

希望对您有所帮助

viewController的tabBarController是可选的。 UITabBarController 中的 tabBar 不是可选的。因此你可以尝试:

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