使用Quartz进行简单绘图 - 核心图形

时间:2010-11-07 19:25:15

标签: iphone cocoa cocoa-touch core-graphics

我想画一个矩形,左上角圆角,里面有3个子空格。像这样:

 _______
|_|_____|
|       |
|_______|

但由于某种原因,我无法画出内在的两条线。

- (void) drawRect:(CGRect)rect{
CGContextRef context = UIGraphicsGetCurrentContext();
float cornerRadius = 25.0;
float w = self.bounds.size.width;
float h = self.bounds.size.height;
CGContextMoveToPoint(context, cornerRadius, 0);
CGContextAddQuadCurveToPoint(context, 0, 0, 0, cornerRadius);
CGContextAddLineToPoint(context, 0, h);
CGContextAddLineToPoint(context, w, h);
CGContextAddLineToPoint(context, w, 0);
CGContextAddLineToPoint(context, cornerRadius, 0);

//drawing settings
CGContextSetLineWidth(context, 0.5);
CGContextSetStrokeColorWithColor(context, [UIColor blackColor].CGColor);
CGContextSetFillColorWithColor(context, [UIColor white].CGColor); 

//draw rectangle
CGContextDrawPath(context, kCGPathFillStroke);

//draw title/label partition
CGContextMoveToPoint(context, TITLE_HEIGHT, 0);
CGContextAddLineToPoint(context, TITLE_HEIGHT, TITLE_HEIGHT);
CGContextStrokePath(context);

//draw title/content partition
CGContextMoveToPoint(context, 0, TITLE_HEIGHT);
CGContextAddLineToPoint(context, self.bounds.size.width, TITLE_HEIGHT);
CGContextStrokePath(context);
}

我想知道我在这里误会了什么......;(

提前致谢

1 个答案:

答案 0 :(得分:0)

尝试将CGContextSetFillColorWithColor线注释掉一段时间 - 也许矩形与这些线重叠?