0
//inside init
_color = [UIColor orangeColor];
self.backgroundColor = [UIColor clearColor];
self.clearsContextBeforeDrawing = NO;

//inside drawRect
CGContextRef ctx = UIGraphicsGetCurrentContext();

CGContextSaveGState(ctx);
    CGContextAddEllipseInRect(ctx, rect);
    CGContextSetFillColorWithColor(ctx,
                                   _color.CGColor);
    CGContextFillPath(ctx);
CGContextRestoreGState(ctx);

背景一直显示为白色而不是透明。椭圆也不会改变颜色并显示为黑色。提前感谢任何看的人。

4

1 回答 1

0

我想你可以参考这个答案来解决你的透明度问题: 设置 CGContext 透明背景

至于您的椭圆颜色问题,它在我的模拟器上正确显示为橙色椭圆,因此您可以检查代码中其他部分的可能覆盖或其他可能的副作用。

于 2013-03-04T21:19:36.097 回答