2012-02-28 31 views
-1

我想爲每個支架添加標籤。我得到「Reciever類型」繪製2D「(我的類),例如消息沒有聲明第二行到最後一行的選擇器'addSubView'的方法。並且我得到了「ARC禁止顯式發送'release'消息」的最後一行。添加UILabel查看objective-c

這裏是我的代碼:

for (int i = 0; i < 4; i++) { 
    CGFloat bracketStartX = 50; 
    CGFloat bracketEndX = 200; 
    CGFloat bracketStartY = 25 + (i * height/4); 
    CGFloat bracketEndY = 80 + (i * height/4); 
    CGContextMoveToPoint(context, bracketStartX, bracketStartY); 

    //make bracket 
    CGContextAddLineToPoint(context, bracketEndX, bracketStartY); 

    CGContextAddLineToPoint(context, bracketEndX, bracketEndY); 
    CGContextAddLineToPoint(context, bracketStartX, bracketEndY); 

    CGContextMoveToPoint(context, bracketEndX, (bracketEndY + bracketStartY)/2); 
    CGContextAddLineToPoint(context, bracketEndX + 50, (bracketEndY + bracketStartY)/2); 

    UILabel *label = [[UILabel alloc] initWithFrame: CGRectMake(bracketStartX + 5, bracketStartY - 5, 20, 15)]; 
    label.text = @"text"; //etc... 
    [self addSubView:label]; 
    [label release]; 

} 

感謝。

回答

0

[self addSubview]; // lowercase v

如果您使用ARC,不要release你的對象。

0

看起來你的類不是UIView的子類,這就是爲什麼你不能調用addSubView。此外,由於您正在使用ARC,您可以安全地移除發佈呼叫,ARC會爲您處理。