如何使用CoreGraphics绘制半圆

6 iphone xcode ios

我正在尝试使用Core Graphics绘制一个半圆并用一些颜色填充它.我想用CALayer替换颜色和图像.任何人都可以帮助如何做到这一点谢谢!

代码在这里.

CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 2);
CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
CGContextMoveToPoint(context, 0, 500);
CGContextAddArc(context, 60, 500, 50, 90, 180, 0);
CGContextStrokePath(context);
Run Code Online (Sandbox Code Playgroud)

Sij*_*der 7

您需要以弧度为单位指定角度,而不是度数.180度=π弧度.所以在你的例子中:

CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 2);
CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
CGContextMoveToPoint(context, 10, 500);
CGContextAddArc(context, 60, 500, 50, M_PI / 2, M_PI, 0);
CGContextStrokePath(context);
Run Code Online (Sandbox Code Playgroud)

请注意,我还将起点(... MoveToPoint)向右移动了10个像素,因为这是弧开始的位置.


zer*_*nna 5

给出的答案对我来说不适用于iOS 7!
我创建了一个小类来创建一个角度为百分比的圆.也许你想看看它.
如果你只想创建一个半圆,你仍然可以采用这种方法.
这是:GitHub Link
这就是它的样子:

persentage圈