2011-04-08 37 views
1

我有一个CGpoint数组,我想连接这些点来创建一条线。我知道如何通过UIView的子类来完成它。但我想在这里做的是,我已经有一个CGPoint数组,并且我有一个按钮,当我单击按钮时,该行将显示。如何用CGPoint数组画一条线

我不知道该怎么做。

但是我尝试类似如下:(艾琳是CGPoint数组)

#define POINT(X) [[aLine objectAtIndex:X]CGPointValue] 


CGContextRef context = UIGraphicsGetCurrentContext(); 
for (int i = 0;i < (aLine.count-1);i++){ 
    CGPoint pt1 = POINT(i); 
    CGPoint pt1 = POINT(i+1); 
    CGContextMoveToPoint(context,pt1.x,pt1.y); 
    CGContextAddLineToPoint(context,pt2.x,pt2.y); 
    CGContextStrokePath(context); 
} 

任何人都可以帮我吗?谢谢。

+0

您是否设置了笔触颜色? – 2011-04-08 07:15:09

+0

您应该在drawRect回调中完成此绘图,而不是在单击按钮时在UIButton委托中。你是? – hotpaw2 2011-04-09 17:46:51

+0

谢谢,我已经解决了这个问题。 – Dawson 2011-04-11 02:39:57

回答

0

你快到了!首先,你需要设置描边颜色...

CGContextSetStrokeColor(context, CGColorGetComponents([colour CGColor])); 

然后你做你的连接点(目前是你的代码做什么)时,只需关闭路径和中风它...

CGContextClosePath(context); 
CGContextDrawPath(context, kCGPathStroke); 
+0

当我点击按钮它显示错误: – Dawson 2011-04-08 08:00:52