大熊猫猪侯佩 (︶^︶)

hopy是一只贪吃贪睡爱鹅鹅的大熊猫猪

通过Xib自定义UIViewController实例化时报错的解决

自定义一个UIViewController,名为FooViewController

因为希望各个VC独立分开,所以没有将自定义控制器的UI放到storyboard里,而是单独做了一个xib文件。

注意Xcode自定义继承自UIViewController的类且创建xib文件时,其xib中File’s Owner应该就是你自定义的类名,即FooViewController.

下面我们编写使用它的代码:

let fooVC = UIViewController(nibName: "FooViewController", bundle: nil) as! FooViewController

运行一下,崩在上面一句:提示无法将UIViewController对象转换为FooViewController!?

我们索性将后面的强转去掉试一下:

let fooVC = UIViewController(nibName: "FooViewController", bundle: nil)

再次运行,上面一句可以通过,不过App还是崩掉了,提示UIViewController不符合神马键值观察。估计是我在xib中绑定了IBOutlet,但是运行时由于类不对头没有找到。

不管怎样,正确的写法如下:

let fooVC = FooViewController(nibName: "FooViewController", bundle: nil)

现在一切正常了,里面的布局和IBOutlet也都OK了。

阅读更多

扫码向博主提问

去开通我的Chat快问

mydo

博客专家

iOS以及ROR、Swift、ObjC
  • 擅长领域:
  • iOS开发
  • ROR开发
  • Swift
  • C及汇编语言
  • 框架设计
版权声明:大熊猫猪·侯佩原创或翻译作品.谢绝转载! hopy https://blog.csdn.net/mydo/article/details/80693673
个人分类: ios & os x开发
所属专栏: CocoaTouch开发之旅
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭