2013-02-27 76 views
-1

我想用顏色填充矩形。但我的代碼不起作用(沒有矩形出現)。請告訴我這段代碼有什麼問題?無法爲CGRect設置填充顏色/路徑石英

- (void)drawRect:(CGRect)rect 
{ 
context = UIGraphicsGetCurrentContext(); 
CGContextSetRGBFillColor(context, 84, 84, 84, 1); 
firstTower = CGRectMake(20, 20, 50, 200); 
CGContextDrawPath(context, kCGPathFillStroke); 

if (_touchHasBegun) 
{ 
    context = UIGraphicsGetCurrentContext(); 
    CGContextSetLineWidth(context, 2.0); 
    CGContextSetRGBStrokeColor(context, 0, 34, 102, 1);      
    CGContextSetRGBFillColor(context, 135, 206, 250, 0.25); 
    rectangle = CGRectMake(1, 1, 500, 500); 
    CGContextAddArc(context, pointWhereUserClickedX, pointWhereUserClickedY, 50, 0, 2*3.14159265359, YES); 
    CGContextDrawPath(context, kCGPathFillStroke); 


} 

}

如果語句是一個圓。

+0

「不起作用」是什麼意思? – 2013-02-27 21:36:57

+0

我實際上通過刪除第一個CGCOntextDrawPath行來解決這個問題。但請看一個新問題的更新問題。 – JimmyYXA 2013-02-27 21:57:54

回答

0

矩形不會出現,因爲您沒有將其添加到上下文中。您已創建CGRect並將其分配給firstTower變量,但您永遠不會告訴它的上下文。

你可能想分配給firstTower後添加

CGContextAddRect(context, firstTower); 

同樣,你沒有在第二次繪製中添加rectangle值。