Ich habe eine Unterklasse von UIView
mit einer XIB
Datei von UIViewController
verbunden.CAShapeLayer ist nicht sichtbar
ich PocketSVG
bin mit meiner SVG
Datei zu CGPath
so konvertieren:
override func awakeFromNib() {
let myPath = PocketSVG.pathFromSVGFileNamed("").takeUnretainedValue()
let myShapeLayer = CAShapeLayer()
myShapeLayer.path = myPath
myShapeLayer.strokeColor = UIColor.redColor().CGColor
myShapeLayer.lineWidth = 3
myShapeLayer.fillColor = UIColor.whiteColor().CGColor
self.layer.addSublayer(myShapeLayer)
}
das Problem ist, dass, wenn ich die app betreibe ich nichts sehen kann, ist die Schicht nicht sichtbar.
Was mache ich jetzt falsch?
Vielen Dank!
Wenn Sie einen Breakpoint verwenden und 'myShapeLayer' drucken, was ist sein Frame? Auf den ersten Blick scheint es so zu sein, dass Sie der Shape-Ebene keinen Rahmen gegeben haben, was bedeutet, dass der Rahmen "CGRectZero" ist und nicht auf dem Bildschirm angezeigt wird. – keithbhunter
Erstens, sind Sie sicher, dass Sie eine gültige 'CGPathRef' erhalten? Ich würde 'myPath' überprüfen. Zweitens, wenn Sie 'awakeFromNib' überschreiben, möchten Sie vielleicht' super' aufrufen. – Rob
@keithbhunter Ja, der Rahmen ist '0,0,0,0', um ihn in' self.view' zu ändern? –