2012-10-17 26 views
0

可能重複:
Increment UISlider by 1 in range 1 to 100增量UISlider在範圍0 0.2〜2.0

我新的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,等等...

任何幫助將appriciated。

+0

嚴重?你已經問過同樣的問題了...... – borrrden

回答

7

在您的sliderChanged方法中,從滑塊中取值,將其舍入到最接近的0.2,然後將滑塊的值設置爲該舍入值。這會將滑塊的大拇指對齊到0.2增量。

你能讓這樣的:

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

(感謝@koki)

+0

我沒有倒下你。 – jrturton

+0

如何將它舍入到最接近的0.2? – Krunal

+0

這是你真正的問題,因爲這是另外一個確切的重複? – jrturton