我在viewDidLoad中使用以下代码填充路径,效果很好

UIGraphicsBeginImageContext(_drawingPad.frame.size);
CGContextRef context1 = UIGraphicsGetCurrentContext();

CGContextMoveToPoint(context1, 300, 300);
CGContextAddLineToPoint(context1, 400, 350);
CGContextAddLineToPoint(context1, 300, 400);
CGContextAddLineToPoint(context1, 250, 350);
CGContextAddLineToPoint(context1, 300, 300);

CGContextClosePath(context1);
//CGContextStrokePath(context1);

CGContextSetFillColorWithColor(context1, [UIColor redColor].CGColor);
CGContextFillPath(context1);
CGContextStrokePath(context1);


当触摸开始时,我也在创建一条线。
但在创建该行之前,填充路径已被删除。

最佳答案

更换

CGContextFillPath(context1);
CGContextStrokePath(context1);


通过

CGContextDrawPath(context1, kCGPathFillStroke);


这将填充并描画当前路径,而不会擦除它们之间的路径。

09-25 19:00