我已经在Stack Overflow上阅读了elsewhere,UIView从NSObject继承了init()。但是,这没有意义。由于UIView定义了自己的指定初始化器,因此应该阻止初始化器继承。或者,当swift类继承自objective-c类
时,该规则是否会被更改答案 0 :(得分:3)
请记住,UIView是一个Objective-C类,而Objective-C不是Swift。 Objective-C中没有关于指定和便利初始化器及其继承规则的规则 - 在Swift中使用这些类时有时会导致严重问题。也就是说,实际上,UIView的init()
是一个调用init(frame: .zero)
的便捷初始值设定项。