0

ここで問題があります。UIView に表示される UILabels を動的に作成しています。コードは次のとおりです。

for (flower in flowerList)
{               

    // Create the Qty label
    CGRect rectQty = CGRectMake(x , y, 25, labelHeight);
    UILabel *flowerQuantityLabel = [[UILabel alloc] initWithFrame:rectQty];
    NSString *fQty = [[NSString alloc] initWithFormat:@"%d", flower.flowerQty];
    [flowerQuantityLabel setText:fQty];
    // Loading refrence into a array  
        // here is the problem 
    [flowersQtyLabels addObject:flowerQuantityLabel];

    // Create the name label
    CGRect rectName = CGRectMake((x+offset) , y, labelWidth, labelHeight);
    UILabel *flowerNameLabel = [[UILabel alloc] initWithFrame:rectName];
    [flowerNameLabel setText:flower.flowerName];

    y = y + 40.0;
    [self.view addSubview:flowerQuantityLabel];
    [self.view addSubview:flowerNameLabel];

}
  • 配列の要素数は毎回変わります。
  • 「flower.flowerQty」を再計算し、結果をラベル (flowerQuantityLabel) に更新する必要があります。
  • 再計算の結果で内容を変更するために、各 flowerQuantityLabel への参照を NSMuttableArray (flowersQtyLabels) にロードしようとしました。
  • for の最後では、配列 flowersQtyLabels は空です。何が問題なのかわかりません。

誰かが私を助けてくれることを願っています。

4

1 に答える 1

0

NSMuttableArray正しく初期化されていませんでした。

于 2009-06-18T23:13:31.007 に答える