0

重複の可能性:
UISliderを1から100の範囲で1つ増やします

私はiPhoneを初めて使用しますが、

UISliderを0.2刻みで0から2に変更するにはどうすればよいですか?

slider = [[UISlider alloc] init];
[slider addTarget:self action:@selector(sliderChange:) forControlEvents:UIControlEventValueChanged];
[slider setBackgroundColor:[UIColor clearColor]];
slider.minimumValue = 0.0;
slider.maximumValue = 2.0;
slider.continuous = YES;
slider.value = 0.0;

- (IBAction)sliderChange:(id)sender{
    NSLog(@"slider.value=%f",slider.value);
}

ログショーをスライドすると...

slider.value = 1.000000
slider.value = 1.123440
slider.value = 1.234550
slider.value = 1.345670
slider.value = 1.567890
.
.
.

スライダーの値を0.0、0.2、0.4などにします。

どんな助けでも適用されます。

4

1 に答える 1

10

SliderChangedメソッドで、スライダーから値を取得し、0.2に最も近い値に丸めてから、スライダーの値をこの丸められた値に設定します。これにより、スライダーサムが0.2刻みでスナップします。

あなたはこのように丸めることができます:

float roundedValue = roundf(value / 0.2f) * 0.2f;

(ありがとう@koki)

于 2012-10-17T05:51:41.103 に答える