我在iOS中使用核心图形绘制椭圆。椭圆角附近的区域是黑色的。我希望它是clearColor。我怎么得到这个?
CGContextAddEllipseInRect(context, ellipseFrame);
CGContextSetFillColorWithColor(context, fillColor);
CGContextFillEllipseInRect(context, ellipseFrame);
对不起我没有足够的声誉来添加输出的屏幕截图。
答案 0 :(得分:1)
在开始绘画之前清除上下文:
CGContextClearRect(context, ellipseFrame);
答案 1 :(得分:1)
如果要在UIView子类的drawRect方法中绘制椭圆, 椭圆角附近的区域必须采用UIView的背景颜色。 将backgroundColor设置为clearColor应该可以解决问题。
答案 2 :(得分:0)
在UIView或NSView中,您可以从后向前绘制。 你可以想到你在drawRect中编写的代码:作为程序性的回到前面的绘图说明。 如果您看到黑角,您可能有一个包含视图的isOpaque或需要先在[drawCect]中进行后续绘制之前执行[[NSColor clearColor] fill]: