我在UIView上画了一条线。当我调用-setNeedsDisplay时,我的视图变得清晰并绘制新线条。如何继续当前行?如何用动画绘画?感谢。
- (void)drawRect:(CGRect)rect {
[super drawRect:rect];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetStrokeColorWithColor(context, [_color CGColor]);
CGContextSetLineWidth(context, 10.0);
CGContextMoveToPoint(context, _startPointX, 0);
CGContextAddLineToPoint(context, _endPointX, 0);
CGContextStrokePath(context);
}
答案 0 :(得分:2)
setNeedsDisplay完全重绘视图。因此,您需要将所有图形存储在某处并在每次重绘时应用它。 在绘制动画时你是什么意思?动画绘图正在绘制自己。只需在每次小改动后重新绘制视图,看起来就像是自然绘制的。
答案 1 :(得分:0)
对于动画,您可以使用这些行创建CAShapeLayer。
然后用keypath @" storkeEnd"创建一个CABasicAnimation。 toValue设置@ 1以绘制从清除到绘制的所有行。