Swift:从xib以编程方式创建UIViewController

时间:2015-05-15 08:44:33

标签: ios objective-c swift uiviewcontroller

我这几天快到了,我提出了一个问题。

如果我必须以编程方式创建新的UIViewController怎么办?

使用空/新视图控制器轻松:

var controller: UIViewController = UIViewController()
controller.view.backgroundColor = UIColor.whiteColor()
self.presentViewController(controller, animated: true, completion: nil)

现在,我有一个我想在控制器上加载的xib文件:

var controller: UIViewController = UIViewController(nibName: "FeedDetail", bundle: nil)
controller.view.backgroundColor = UIColor.whiteColor()
self.presentViewController(controller, animated: true, completion: nil)

这次崩溃是因为:

'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "FeedDetail" nib but the view outlet was not set.'

我已经阅读了post,但我无法理解错误!

enter image description here

1 个答案:

答案 0 :(得分:3)

我从here那里得到了答案,你错过了一些类似的东西(你在xib中没有视图所以添加一个然后再这样做):

enter image description here

如果您使用Xib,请按照

进行操作

以下步骤

  

1)打开xib文件,然后右键单击文件所有者并拖动到第一个视图

enter image description here

  

2)然后将该视图与“view”的出口

绑定

enter image description here

希望你能得到它......