0

UITableViewCellを取得し、UISliderとUILabelを追加して、スライダーの値が次のようになることを示します。| Bezeichnung | Value von UISlider | UISlider |
これがcellForRowAtIndexPathの私のコードです

if (self.maxValue == nil) {
   self.maxValue = [[UISlider alloc] initWithFrame:CGRectMake(130.0, 6.0, 140.0, 30.0)];
   self.maxValue.minimumValue = [self.selectedControl.minValue floatValue]; 
   self.maxValue.maximumValue = 1.0;
}
self.maxValue.value = [self.selectedControl.maxValue floatValue];

//Init UILabel
if (self.maxLabel == nil) {
   self.maxLabel = [[UILabel alloc] initWithFrame:CGRectMake(100., 6., 100., 30.)];}
   self.maxLabel.text = [NSString stringWithFormat:@"%.2f", [self.selectedControl.maxValue      floatValue]];
}
cell.textLabel.text = @"Max. Value";

//Add UILabel and UISlider
[cell.contentView addSubview:self.maxLabel];
[cell.contentView addSubview:self.maxValue];

結果は
IMGLINKです(画像を投稿できません)

UILabelの位置は正しいですが、UISliderの位置とサイズは無視されます。addSubviewコマンドの順序を変更すると、常に2番目に追加されたビューが間違っています。
なにが問題ですか?
よろしくお願いします。

4

1 に答える 1

0

問題が見つかりました。
デリゲートを追加するために、IB の IBOutlets として 2 つの UISliders を用意しました。
それが問題のようです。今、私はアウトレットを削除し、デリゲートを自分でコーディングしました。
そして、それはうまくいきます:)

私を信じてくれてありがとう!

于 2011-02-22T16:16:56.390 に答える