私は、swiftを使って単純な線をココアアプリケーションに描画しようとしていましたが、CGContextクラスの使い方を完全に理解できませんでした。draw in cocoa swift
私はこのクラス作成しました:
import Cocoa
class Drawing: NSView {
override func drawRect(dirtyRect: NSRect) {
super.drawRect(dirtyRect)
let context = NSGraphicsContext.currentContext()?.CGContext;
CGContextBeginPath(context)
CGContextMoveToPoint(context, 0, 0)
CGContextAddLineToPoint(context, 100, 100)
CGContextSetRGBStrokeColor(context, 1, 1, 1, 1)
CGContextSetLineWidth(context, 5.0)
CGContextStrokePath(context)
}
}
をので
override func viewDidLoad() {
super.viewDidLoad()
let dr = Drawing()
self.view.addSubview(dr)
dr.drawRect(NSRect(x: 0, y: 0, width: 100, height: 100))
}
などのメインウィンドウにそれを使用しますが、それはあなたが初期化する必要がある事
代わりに 'drawRect()'を呼び出してからサブビューを追加してみてください –
NSViewのサブクラス化ではなくUIViewを使うのはなぜですか? –
これは、UIKit(iOS)アプリケーションではないココア(MacOS)だからです。 –