使用UIBezierPath在Swift中绘制椭圆

bor*_*ero 10 uibezierpath swift xcode6 ios8

我有一个UIViewController我想在屏幕上画一个椭圆CGPoint(x:160,y:160),宽度:240,高度:320.我怎么能在swift中做到这一点?我非常感谢任何帮助.

Gly*_*ard 20

我相信这就是你要求的:

var ovalPath = UIBezierPath(ovalInRect: CGRectMake(160, 160, 240, 320))
UIColor.grayColor().setFill()
ovalPath.fill()
Run Code Online (Sandbox Code Playgroud)

对于复杂的形状,我建议检查PaintCode.当您在屏幕上绘制形状时,它会为您创建快速代码(过去,它为我节省了大量时间).

编辑:

import Foundation
import UIKit

class CustomOval: UView {

    override func drawRect(rect: CGRect)
    {
            var ovalPath = UIBezierPath(ovalInRect: CGRectMake(0, 0, 240, 320))
            UIColor.grayColor().setFill()
            ovalPath.fill()
    }

}
Run Code Online (Sandbox Code Playgroud)

然后 :

var exampleView = CustomOval()
Run Code Online (Sandbox Code Playgroud)

然后用约束等定位它.

斯威夫特4

var ovalPath = UIBezierPath(ovalIn: CGRect(x: 160, y: 160, width: 240, height: 320))
UIColor.gray.setFill()
ovalPath.fill()
Run Code Online (Sandbox Code Playgroud)