ジェスチャ認識に基づいて線を描画するメソッドを実装しようとしていますが、UIBezierPath を表示できません。メソッドがアクティブになるたびにログに出力するため、ジェスチャ認識機能が機能していることがわかります。また、私を混乱させているのは、BezierPath を描画しようとする前に描画した青い線が表示されますが、BezierPath は表示されないことです。任意の点を手動で追加しても、次のように何も描画されません。
[myPath addLineToPoint:CGPointMake(50, 50)];
これが私のUIViewのコードです:
- (void)drawRect:(CGRect)rect
{
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(ctx, 0, 0, 1.0, 1);
CGContextMoveToPoint(ctx, 0, 150);
CGContextAddLineToPoint( ctx, 480, 150);
CGContextStrokePath(ctx);
[myPath addLineToPoint:CGPointMake(50, 50)];
[myPath stroke];
}
- (IBAction)handlePan:(UIPanGestureRecognizer *) recognizers {
CGPoint translation = [recognizers translationInView:self];
NSLog(@"Logged");
[myPath addLineToPoint:CGPointMake(translation.x, translation.y)];
[self setNeedsDisplay];
}
助けてくれてありがとう!