无法在矩形中获得正确的UIColor

时间:2014-03-24 11:29:44

标签: ios objective-c core-graphics

全部,

我有这段代码:

- (void)drawRect:(CGRect)rect
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [UIColor redColor].CGColor);
    CGContextFillRect(context, CGRectMake(0, 440, 320, 30));

我称之为:

_rectangeView = [[PopUpRectangle alloc] initWithFrame:CGRectMake(0, 538, 320, 30)];

但它的黑色!

有人建议为什么会这样?

2 个答案:

答案 0 :(得分:1)

像这样改变你的着色矩阵......

CGContextFillRect(context, CGRectMake(0, 0, 320, 30));

使用0,0作为原点而不是0,440。

这应该有效。

在drawRect中,您处理视图本身的向量空间而不是其超视图。所以0,0是rectangleView的左上角。

答案 1 :(得分:0)

您的_rectangeView高度仅为30分,但上下文填充矩形边界y的值为440.0;超出了视图的范围。尝试将y值更改为0,您将看到颜色。