在运行iOS 8时,基于nib的视图控制器的
我的应用程序支持iOS 8+,我正在运行Xcode 7.2。
IBOutlet
为nil
,但在运行iOS 9时可以正常工作。有任何想法为什么会发生这种情况?我的应用程序支持iOS 8+,我正在运行Xcode 7.2。
IBOutlet
为nil
,但在运行iOS 9时可以正常工作。有任何想法为什么会发生这种情况?问题出在我的UIViewController实例化方式上。将
let myVC = MyViewController()
改为
let myVC = MyViewController(nibName: "MyViewController", bundle: nil)
解决了这个问题。
NSBundle(forClass: self.dynamicType)
代替将nil
传递给bundle参数。 - orkodenNSBundle(forClass: MyViewController.self)
会更准确吗? - jjramoslet myVC = MyViewController(nibName: String(MyViewController), bundle: NSBundle(forClass: MyViewController.self))
- jjramosinit(nibName:, bundle: )
的重写(并在其中调用super)即可解决问题。谢谢! - Nick KanellopoulosMyViewController(nibName: String(describing: MyViewController.self), bundle: Bundle(for: type(of: self)))
。 - Amjad Husseini