如何在iphone视图中的两个点击点之间绘制自动线 [英] how to draw automatic line between two tap points in a view in iphone

查看:18
本文介绍了如何在iphone视图中的两个点击点之间绘制自动线的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

How can we draw a line automatically after the user taps two different points. The line should be joining those two different points.

应该使用什么框架和方法来做到这一点.

What frameworks and methods should be used do so.

谢谢

推荐答案

你可以借助 touchedEnded 方法(文档).

You can store the touched locations in two different CGPoint with the help of the touchedEnded method (documentation).

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

Then, when you have your two points, you can add a new UIView as subview which is aware of the two CGPoint and will draw a line in its drawRect method. Or do it in the current view, by calling [view setNeedsDisplay] to trigger its own drawRect method.

如果你不知道如何用 CoreGraphics 画一条简单的线,这里是开始:

If you don't know how to draw a simple line with CoreGraphics, here is the beginning :

- (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); 
}

这篇关于如何在iphone视图中的两个点击点之间绘制自动线的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆