椭圆的周围区域是黑色的。为什么?

时间:2013-05-22 06:36:29

标签: iphone ios objective-c ipad

我在iOS中使用核心图形绘制椭圆。椭圆角附近的区域是黑色的。我希望它是clearColor。我怎么得到这个?

CGContextAddEllipseInRect(context, ellipseFrame);
CGContextSetFillColorWithColor(context, fillColor);
CGContextFillEllipseInRect(context, ellipseFrame);

对不起我没有足够的声誉来添加输出的屏幕截图。

3 个答案:

答案 0 :(得分:1)

在开始绘画之前清除上下文:

CGContextClearRect(context, ellipseFrame);

答案 1 :(得分:1)

如果要在UIView子类的drawRect方法中绘制椭圆, 椭圆角附近的区域必须采用UIView的背景颜色。 将backgroundColor设置为clearColor应该可以解决问题。

答案 2 :(得分:0)

在UIView或NSView中,您可以从后向前绘制。 你可以想到你在drawRect中编写的代码:作为程序性的回到前面的绘图说明。 如果您看到黑角,您可能有一个包含视图的isOpaque或需要先在[drawCect]中进行后续绘制之前执行[[NSColor clearColor] fill]: