IOS UISlider非連続型近似値

私は10と100の間の値を持つUISliderを持っています。とてもうまく動作します。

私は1より1ではなく5で値を増やすことができることを除いて。

今、私がスライドを動かすと、値は線形に増加しています:10,11,12,13、...

スライダーを5:10,15,20,25、...のように値を大きくすると移動できるようにしたい

これは可能ですか?

どうもありがとう!

2

2 答え

このコードを使用してスライド値を5ずつ増やします

sliderPosition = (int)(round(mySlider.value/5)*5); 
2
追加された

あなたのためのいくつかのコードは、どこかのstackoverflowの投稿に基づいています...

- (IBAction)terrainValueChanged:(id)sender {

    float newStep = roundf((terrainSlider.value)/self.stepValue);
    self.terrainSlider.value = newStep * self.stepValue;
    int intValue = self.terrainSlider.value;
    terrainRating = intValue;

}

これで初期化する:

    stepValue = 1;
    self.terrainStep = (self.terrainSlider.value)/self.terrainStep;
1
追加された
ありがとう@ポール。ブリリアント!私はround()関数を使用して終了しました。スライドの値を5ずつ増やすための答えを以下に示します。
追加された 著者 user885483,