【发布时间】:2016-12-15 11:04:42
【问题描述】:
我正在做一个项目,我使用的是 xib 而不是故事板,所以我想从 xibs 实例化我的 UIViewControllers,我看到了两种方法,第一种是
let viewController = UINib(nibName: "ViewController", bundle: NSBundle.mainBundle()).instantiateWithOwner(nil, options: [:]).first as! ViewController
还有这个方法
let viewController = ViewController(nibName: "View", bundle: NSBundle.mainBundle())
我总是看到它漂浮在周围。为什么我应该使用第二种方法而不是第一种,使用第一种方法是否有缺点,是否被认为是不好的做法?澄清第一种方法是从 xib 实例化整个 ViewController。就像在 xib 中有一个 UIViewController 直接放在那里一样,第二个具有以视图控制器为所有者的视图。
【问题讨论】:
-
意见:选项 1 更灵活也更晦涩。如果我在代码中看到它,我会担心出现了哪些异常情况。
标签: ios swift uiviewcontroller xib