Warum der folgende Code wirft fatal error: unexpectedly found nil while unwrapping an Optional value
, wenn in Xcode Spielplatz ausgeführt? Ich bin mir nicht sicher, was mit dem folgenden Code falsch ist. Danke für Ihre Hilfe. Ich habe es nicht versucht, es außerhalb des Spielplatzes zu laufen.DrawRect wirft "fataler Fehler: unerwartet gefunden Null beim Entpacken ein optionaler Wert" in Xcode Spielplatz
import UIKit
import XCPlayground
class CircularProgressView: UIView {
var progressBackgroundLayer: CAShapeLayer!
var progressLayer: CAShapeLayer!
var iconLayer: CAShapeLayer!
override init(frame: CGRect) {
super.init(frame: frame)
self.setup()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.setup()
}
convenience init() {
self.init(frame: CGRectZero)
}
func setup() {
progressBackgroundLayer = CAShapeLayer(layer: layer)
progressLayer = CAShapeLayer(layer: layer)
iconLayer = CAShapeLayer(layer: layer)
}
override func drawRect(rect: CGRect) {
progressBackgroundLayer.frame = self.bounds
progressLayer.frame = self.bounds
iconLayer.frame = self.bounds
}
}
var progressView = CircularProgressView(frame: CGRectMake(0, 0, 80, 80))
XCPlaygroundPage.currentPage.needsIndefiniteExecution = true
XCPlaygroundPage.currentPage.liveView = progressView
Woher kommt 'layer' in' setup() '? – Alexander
P.s. Aus diesem Grund sollten Sie implizit ausgepackte Optionen vermeiden. – Alexander