0

私の問題は、OSX 用に作成されたアプリケーションで、Swift を使用して View Controller で楕円形を描画できないことです。

ビューコントローラーに次のコードがあります。

class TouchController: NSViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        //// Color Declarations
        let color2 = NSColor(calibratedRed: 0.769, green: 0.364, blue: 0.364, alpha: 1)

        //// Oval Drawing
        let ovalPath = NSBezierPath(ovalInRect: NSMakeRect(70, 24, 145, 143))
        color2.setFill()
        ovalPath.fill()
    }
}

図面のコードは、ペイント コードによって作成されました。私はSwiftでOSX用にこれを書いています。私の質問は、コードをコンパイルすると楕円形が表示されないのはなぜですか?

4

1 に答える 1

2

Cocoa では、ビューを描画するのdrawRectメソッドを実装します。NSView既存のコードを使用して、次の Playground 互換の例を参照してください。

import Cocoa

public class CustomOval : NSView {
    public override func drawRect(dirtyRect: NSRect) {
        let color = NSColor(calibratedRed: 0.769, green: 0.364, blue: 0.364, alpha: 1)
        let path = NSBezierPath(ovalInRect: NSMakeRect(70, 24, 145, 143))
        color.setFill()
        path.fill()
    }
}

var oval = CustomOval(frame: NSRect(x: 0, y: 0, width: 300, height: 300))

詳細については、 「ベジエ パスを使用した図形の描画」を参照してください。

于 2015-07-29T23:52:59.870 に答える