0

我想创建一个带有边框颜色的圆圈。我不熟悉石英,但我知道这是创建弧的方式:

    CGContextAddArc(<#CGContextRef c#>, <#CGFloat x#>, <#CGFloat y#>, <#CGFloat radius#>, <#CGFloat startAngle#>, <#CGFloat endAngle#>, <#int clockwise#>)

但我真的不知道“#CGContextRef c”是什么意思。任何人都可以告诉如何为其添加样式,即颜色、边框等。

此代码不起作用。怎么了?

- (void)circle
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(context, 0, 0, 225, 0);
CGContextSetRGBFillColor(context, 0, 0, 255, 0);
CGRectMake(10, 10, 10, 10);
}

谢谢

4

1 回答 1

1

CGContext 被 UIKit 隐藏起来,它提供了更高级别的处理图形的方法,例如UIBezierPath,但在某些情况下,您必须直接使用 Quartz API。

您可以CGContextRef通过调用获得UIGraphicsGetCurrentContext,就像这样-

CGContextRef context = UIGraphicsGetCurrentContext();

到达这里后,您可以使用整个CGContext 函数库,例如CGContextSetRGBStrokeColorCGContextSetLineWidth以您喜欢的方式绘制弧线。

请注意,如果您使用您提到的功能,在将弧添加到 CGContext 的路径后,您仍然必须使用CGContextDrawPath. 如果你只是想画一个圆圈,你可能会更好CGContextStrokeEllipseInRect

于 2013-02-25T15:21:22.067 回答