2012-02-28 13 views
-1

各ブラケットのラベルを追加したいと思います。私は "Reciever type 'draw 2D(私のクラス)を取得しています。例えば、メッセージはセレクタ' addSubView 'を使ってメソッドを宣言していません。そして、私は "ARCが最後の行に対して明示的に"リリース "を送信することを禁じています。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はそれを処分します。

関連する問題