Dieser Code funktioniert:Es zeigt "required initializer init muss in der Unterklasse von UIControl zur Verfügung gestellt werden:" Wenn ich init (Rahmen: CGRect) außer Kraft setzen
import UIKit
class wheel: UIControl {
}
Aber dieser Code nicht:
class wheel: UIControl {
override init(frame: CGRect) {
super.init(frame: frame)
}
Es zeigt den Fehler "erforderlich Initialisierungsinitialisierung muss in Unterklasse von UIControl
bereitgestellt werden", wenn ich init (Rahmen: CGRect) überschreiben, aber nicht init(coder aDecoder: NSCoder)
.
Warum muss ich init(coder aDecoder: NSCoder)
implementieren? Und warum muss ich es nicht implementieren, wenn ich init(frame: CGRect)
nicht implementiert habe?
fand ich eine ähnliche Position Stack-Überlauf, aber es nicht erklären: Swift : Error: 'required' initializer 'init(coder:)' must be provided by subclass of 'UIView'
Perfekt klar, vielen Dank !! – allenlinli
Gute Antwort. Aber das Codebeispiel sollte "erforderliche Init?" Anstelle von "Init" sagen. –