2011-04-08 20 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

ストロークカラーを設定しましたか? –

+0

ボタンをクリックしたときにUIButtonデリゲート内ではなく、drawRectコールバック内でこの図面を実行する必要があります。あなたですか? – hotpaw2

+0

ありがとう、私はすでにその問題を解決しています。 – Dawson

答えて

0

あなたはほぼそこにいます!まず、あなたは、あなたが(あなたのコードは、現在行っていることを正確に)あなたの点を結ぶ終わったら...ちょうどパスとストロークを閉じその後、ストロークの色...

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

を設定する必要が

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

ボタンをクリックするとエラーが表示されます: – Dawson