Così ho appena aggiornato a Xcode 6.3 Beta 3 e un sacco di errore (s) appaiono relative ai seguenti:Initializer non sovrascrive un inizializzatore designato dalla propria superclasse
Initializer non sovrascrive un inizializzatore designato dalla sua superclasse.
override init() {
super.init()
}
Per esempio, questo è una classe UIButton
:
class CustomButton: UIButton {
var target: AnyObject!
var selector: Selector!
var action: (() -> Void)!
override init() { // Initializer does not override a designated initializer from its superclass
super.init() // Must call a designated initializer of the superclass 'UIButton'
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override init(frame: CGRect) {
super.init(frame: frame)
}
}
Questo è uno dei miei UIViewController
classi:
class CustomAlertView: UIViewController {
required init(coder aDecoder: NSCoder) {
fatalError("NSCoding not supported")
}
required override init() { // Initializer does not override a designated initializer from its superclass
super.init() // Must call a designated initializer of the superclass 'UIViewController'
}
override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
}
Si dovrebbe , risposta modificata per chiarezza – lostInTransit