6

UIStepper のサイズを変更することは可能ですか? ステッパーのサイズを設定しようとすると、無視されるようです。

UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(50,50,100,100)];
[self.view addSubview:stepper];
NSLog(@"%@",stepper);
CGRect r = CGRectMake(50,50,100,100);
stepper.frame = r;
NSLog(@"%@",stepper);

ログによると、フレームは (50 50; 94 27)

94、27からサイズ変更は可能ですか?

4

4 に答える 4

14

変換せずに UIStepper サイズを適切に更新できます。

次の方法を使用して背景画像を設定すると、ステッパーは背景サイズを使用して自分自身を描画します。

- (void)setBackgroundImage:(UIImage*)image forState:(UIControlState)state

    [self.stepper1 setIncrementImage:[UIImage imageNamed:@"plusIcon1.png"] forState:UIControlStateNormal];
    [self.stepper1 setDecrementImage:[UIImage imageNamed:@"minusIcon1.png"] forState:UIControlStateNormal];

    [self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkg1.png"] forState:UIControlStateNormal];
    [self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkgHighlighted1.png"] forState:UIControlStateHighlighted];
    [self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkgDisabled1.png"] forState:UIControlStateDisabled];

これにより、右側の変更されていないステッパーと比較して、左側の次の結果が得られます。 ここに画像の説明を入力

stepperBkg1@2x.png:

ここに画像の説明を入力

stepperBkgHighlighted1@2x.png:

ここに画像の説明を入力

于 2015-02-11T05:07:37.490 に答える
-1

私はバニ・ウパルに同意します。ステッパーのサイズは変更できません。2 つのカスタム ボタンを使用して同じ機能を実装することはできず、ボタンの背景画像を設定してステッパーの印象を与えることができます。

于 2012-09-21T07:29:39.543 に答える
-3

UIStepper のサイズは変更できません。UIStepper は UIView のサブクラスです。おそらく何らかのハックでサイズを変更できます。UIStepper のサブクラスを作成して drawRect: をオーバーライドしている可能性がありますが、うまくいくかどうかはわかりません。ただし、そうすると、アプリが拒否されるリスクがあります。別のサイズが必要な場合は、カスタム コンポーネントを作成することをお勧めします。

于 2012-09-21T04:41:59.287 に答える