2012-02-06 13 views
2

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

私は値が線形に増加しているスライドを移動した場合、すぐ1

によって5よりもむしろ1によって値を大きくできるようにしたい場合を除き

:10、11、12、13、。 ...

私は値が5増加するスライダーを動かしたときにできるようにしたい

:10、15、20、25、...

が、このことは可能ですか?

多くの感謝!

答えて

1

ここではあなたのためにいくつかのコード、これと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; 
+0

ありがとう@Paul。ブリリアント!私はround()関数を使用して終了しました。スライドの値を5ずつ増やすための答えを以下に示します。 – user885483

2

使用5

によってスライド値を上げるために、このコードは、
sliderPosition = (int)(round(mySlider.value/5)*5);