从xib创建UITabBarController时出现黑屏

问题描述 投票:1回答:1

我尝试从xib创建UITabBarController。所以我在xib中设置了tab项,为这样的控制器连接类和xibs名称。 Open image in full resolution

然后我将TabBarController设置为根视图控制器。

结果,我得到一个没有标签项的黑屏。

我可以通过编程方式创建UITabBarController,所以问题是:如何才能获得我在xib中创建的内容?

ios swift uitabbarcontroller xib
1个回答
2
投票

有一种特殊的方法,必须加载nib中的视图控制器,否则在没有任何后备UI的情况下加载类。

TabBarController中创建以下方法:

class func instantiateFromNib() -> TabBarController {
    let nib = UINib(nibName: "TabBarController", bundle: nil)
    let vc = nib.instantiate(withOwner: nil, options: nil).first as! TabBarController
    return vc
}

现在,在你的AppDelegate中,像这样调用它:

window = UIWindow(frame: UIScreen.main.bounds)
window?.rootViewController = TabBarController.instantiateFromNib()
window?.makeKeyAndVisible()

试一试。

© www.soinside.com 2019 - 2024. All rights reserved.