2011-04-27 31 views
0

所以我在iOS上做這個繪畫應用程序,我有一個問題...的iOS:繪圖應用程序 - 繪製圓,但新的圈子取代老 - 保存狀態?

現在我畫了一個圓圈,用戶點擊......但是這裏有問題。當用戶再次點,第一圈被移動到新的地方。我想要做的就是畫一個新的圈子在那個位置上,不動舊的。

我使用的是周圍的淨許多例子中使用一些標準代碼...

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
UITouch *theTouch = [touches anyObject]; 

startPoint = [theTouch locationInView:self]; 

startPoint.x -= 20; 
startPoint.y -= 20; 

[self setNeedsDisplay]; 
} 

- (void)drawRect:(CGRect)rect 
{ 
// Drawing code 

CGContextRef context = UIGraphicsGetCurrentContext(); 

CGContextSetLineWidth(context, 2.0); 

CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor); 

CGRect rectangle = CGRectMake(startPoint.x,startPoint.y,25,25); 

CGContextAddEllipseInRect(context, rectangle); 

CGContextFillEllipseInRect(context, rectangle); 

CGContextStrokePath(context); 

} 

我知道這可能是一個漂亮的小白十歲上下的問題:) 此外,如果任何人都可以點教程什麼的解釋如何拯救我的形象之後的方向,這將是真正的幫助,以及...

回答

3

你需要跟蹤所有抽頭位置的歷史,畫一個圓在每個那些您的drawRect方法中的位置。

爲了節約,你將需要繪製成位圖背景圖像,看看蘋果的Quartz 2D編程指南如何做到這一點的例子。