Swift 3: dessiner un rectangle
Je suis à 3 jours de la nouvelle swift, et j'essaie de comprendre comment dessiner un rectangle. Je suis trop nouveau pour la langue de connaître les classes d'étendre et les méthodes pour les remplacer, et j'ai regardé autour pour un exemple de code, mais rien ne semble fonctionner (je suis en attribuant à mon utilisation de swift 3).
Ce que je vais essayer maintenant est:
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")
}
}
Et qui ne fait rien. Aider.
source d'informationauteur Jean Valjean
Vous devez vous connecter pour publier un commentaire.
Afin de voir le point de vue, vous avez besoin d'en créer un et de lui donner du cadre de sorte qu'il sait comment big le faire.
Si vous mettez votre code dans une Aire de jeu, puis ajoutez cette ligne:
Vous serez en mesure de cliquer sur le Quick View sur la droite, et vous verrez alors la vue.
Vous pouvez également ajouter de la vue comme une sous-vue de
view
dans votreViewController
et ensuite vous pourrez le voir sur l'iPhone:Noter que vous n'appelez jamais
draw(_:)
directement. Il est appelé pour vous par Cocoa Touch pour afficher la vue.Créer une classe, je l'ai mis dans un autre Swift 3 fichier.
Exemple d'utilisation dans un
UIViewController
objet:Exécuter dans un simulateur d'iPhone, et sur un iPhone:
Utilisé XCode Version 8.0 (8A218a), Swift 3, cible iOS 10.0
C'est une autre façon de dessiner un Rectangle,
Étape 1: Obtenir un rectangle de chemin d'accès pour les points
(Note:
arrPathPoints
doit être de 4 à compter de tracer un rectangle),Étape 2: Utilisation, Appel de méthode comme ceci,