CGContextDrawPath用于两种不同颜色的内部和外部Rect

时间:2014-02-06 03:07:59

标签: ios cgcontext quartz-2d uigraphicscontext

我在drawRect

中使用以下代码
CGContextSaveGState(context);

CGMutablePathRef outerPath=[self createPath:rect];

CGMutablePathRef innnerPath=[self createPath:UIEdgeInsetsInsetRect(rect, UIEdgeInsetsMake(10.0, 10.0, 10.0, 10.0)];

CGPathCloseSubpath(outerPath);

CGContextAddPath(context, outerPath);
    CGContextSetFillColorWithColor(context, [UIColor colorWithRed:249.0/255.0 green:38.0/255.0 blue:1.0/255.0 alpha:1.0].CGColor);

CGContextEOFillPath(context);
CGContextDrawPath(context, kCGPathFill);

CGContextAddPath(context, innnerPath);
CGContextSetFillColorWithColor(context, [UIColor colorWithRed:50.0/255.0 green:213.0/255.0 blue:1.0 alpha:0.4].CGColor);
CGContextDrawPath(context, kCGPathFill);

CGContextRestoreGState(context);

但是,由于我使用0.4 alpha作为内部颜色,内部颜色变为棕色。

如何在下面显示这样的内容?

enter image description here

1 个答案:

答案 0 :(得分:1)

我只想制作一个矩形,用青色填充它,然后用红色抚摸它。确保将笔触宽度设置为所需的大小。