Increment UISlider by 0.2 in range 0 to 2.0 [duplicate]

痞子三分冷 提交于 2019-11-28 06:42:42

问题


Possible Duplicate:
Increment UISlider by 1 in range 1 to 100

I am new to iPhone,

How do I have my UISlider go from 0 to 2 in increments of 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);
}

When i slide my log shows...

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

I want slider value as 0.0 , 0.2 , 0.4 and so on...

Any help will be appriciated.


回答1:


In your sliderChanged method, take the value from your slider, round it to the nearest 0.2, then set the value of your slider to this rounded value. This will snap the slider thumb to 0.2 increments.

You can round like this:

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

(Thanks @koki)



来源:https://stackoverflow.com/questions/12927591/increment-uislider-by-0-2-in-range-0-to-2-0

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!