如何在iPhone视图中的两个点击点之间绘制自动线



如何在用户点击两个不同的点后自动绘制一条线。这条线应该连接这两个不同的点。

应该使用什么框架和方法这样做。

谢谢

您可以在touchedEnded方法(文档)的帮助下将触摸的位置存储在两个不同的CGPoint中。

然后,当你有两个点时,你可以添加一个新的UIView作为子视图,它知道这两个CGPoint,并将在其drawRect方法中画一条线。或者在当前视图中通过调用 [view setNeedsDisplay] 来触发其自己的 drawRect 方法。


如果您不知道如何使用CoreGraphics绘制一条简单的线,这里是开始:

- (void)drawRect:(CGRect)rect
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSaveGState(context);
    CGContextSetStrokeColorWithColor(context, [[UIColor blackColor]CGColor]);
    CGContextSetLineWidth(context, 1.0);
    CGContextMoveToPoint(context, startPoint.x, startPoint.y);
    CGContextAddLineToPoint(context, endPoint.x, endPoint.y);
    CGContextStrokePath(context);
    CGContextRestoreGState(context); 
}

你应该使用 UIBezierPath。如果你给点,它可以画直线曲线,官方文档在这里

也在这里检查

最新更新