回滚drawRect:

时间:2010-06-03 10:07:08

标签: objective-c cocoa quartz-2d

有没有办法退出drawRect:而不刷新当前的UIView? 例如:

- (void)drawRect:(CGRect)rect {

CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetRGBStrokeColor(context, 1.0, 1.0, 1.0, 1.0);
CGContextSetLineWidth(context, 2);

CGContextMoveToPoint(context, 10.0, 30.0);
CGContextAddLineToPoint(context, 310.0, 30.0);
CGContextStrokePath(context);


//I would like to return from here and rollback all changes in drawRect:

}

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您尚未开始绘制上下文,则可以从drawRect:返回。您必须先将视图的clearsContextBeforeDrawing属性设置为NO。

开始在上下文中绘制后,视图/图层将始终更新其内容。