Ich bin 3 Tage neu zu schnell, und ich versuche herauszufinden, wie ein Rechteck zu zeichnen. Ich bin zu neu in der Sprache, um die zu erweiternden Klassen und die Methoden zum Überschreiben zu kennen, und ich habe nach Beispielcode gesucht, aber nichts scheint zu funktionieren (was ich meiner Verwendung von swift 3 zuschreibe).Swift 3: Zeichnen eines Rechtecks
Was ich versuche ist jetzt:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let k = Draw(frame: CGRect(
origin: CGPoint(x: 50, y: 50),
size: CGSize(width: 100, height: 100)))
k.draw(CGRect(
origin: CGPoint(x: 50, y: 50),
size: CGSize(width: 100, height: 100)));
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
class Draw: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func draw(_ rect: CGRect) {
let h = rect.height
let w = rect.width
var color:UIColor = UIColor.yellow()
var drect = CGRect(x: (w * 0.25),y: (h * 0.25),width: (w * 0.5),height: (h * 0.5))
var bpath:UIBezierPath = UIBezierPath(rect: drect)
color.set()
bpath.stroke()
print("it ran")
NSLog("drawRect has updated the view")
}
}
Und das nichts zu tun. Hilfe.
Wenn Sie gerade erst anfangen, ist es nicht der richtige Ort, um allgemeine Fragen wie diese zu Stack Overflow zu stellen. Sie sollten ein gutes Buch oder eine Reihe von Online-Tutorials finden.Werfen Sie einen Blick auf [Gute Quellen zum Lernen von ObjC] (http://stackoverflow.com/q/1374660); Es enthält Referenzen für iOS, und das meiste Material wurde zu diesem Zeitpunkt für Swift aktualisiert. Viel Glück! –
1. Niemals 'Draw' selbst nennen. 2. Rufen Sie einfach 'view.addSubview (k)' auf, um die Ansicht zu Ihrer Ansichtshierarchie hinzuzufügen, und das Betriebssystem wird 'draw'-Methode für Sie aufrufen, wenn es benötigt wird. – Rob