擦除所需的初始化程序

时间:2014-08-19 21:23:30

标签: ios swift

我们有很多带有自定义初始化程序的UIView和UIViewController子类,因为Xcode Beta 5我们必须为每个子类拼出required init(coder:)初始化程序以满足编译器:

required init(coder aDecoder: NSCoder) {
  fatalError( "NSCoding not supported")
}

我们不使用Interface Builder或Storyboard,因此我们的项目不需要NSCoding合规性。有没有办法告诉编译器,如果没有实现这个方法而没有将上面的代码添加到每个新的子类,那么它是否正常?

1 个答案:

答案 0 :(得分:1)

没有办法告诉编译器。您甚至无法在子类与UIViewUIViewController之间实现图层,其唯一目的是required init...

一旦实施init(frame..)覆盖,您必须实施required init(coder...)