Я пытаюсь сделать приложение для рисования фигур на экране, прикоснувшись к нему.Строка стирается при рисовании фигур
Я могу нарисовать линию от одной точки до другой, но она стирается на каждой новой ничьей.
Вот мой код:
CGPoint location;
CGContextRef context;
CGPoint drawAtPoint;
CGPoint lastPoint;
-(void)awakeFromNib{
//[self addSubview:noteView];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];
location = [touch locationInView:touch.view];
[self setNeedsDisplayInRect:CGRectMake(0, 0, 320, 480)];
}
- (void)drawRect:(CGRect)rect {
context = UIGraphicsGetCurrentContext();
[[UIColor blueColor] set];
CGContextSetLineWidth(context,10);
drawAtPoint.x =location.x;
drawAtPoint.y =location.y;
CGContextAddEllipseInRect(context,CGRectMake(drawAtPoint.x, drawAtPoint.y, 2, 2));
CGContextAddLineToPoint(context,lastPoint.x, lastPoint.y);
CGContextStrokePath(context);
lastPoint.x =location.x;
lastPoint.y =location.y;
}
Цените ваш бессильного
Nir.
Я думаю, вы имеете в виду CALayers вместо UILayers. Ему все равно придется выполнять какой-то пользовательский чертеж в методе drawInContext: CALayer или в методе делегата -drawLayer: inContext :, но вы правы, что слои сохраняют их содержимое до перерисовывания. –
Спасибо, ваше право - я исправил ответ –