设置UISlider的间隔值

Man*_*may 8 iphone objective-c uislider

我需要设置UISlider的间隔值.

请帮忙..

Mik*_*e A 12

yourSlider.value = x;

您应该真正阅读iOS开发人员中心的文档,许多优秀的资源.

编辑:关于评论中更具体的问题:

yourSlider.minimumValue = -10;
yourSlider.maximumValue = 10;
[yourSlider addTarget:self action:@selector(roundValue) forControlEvents:UIControlEventValueChanged];

- (void)roundValue{
    yourSlider.value = round(yourSlider.value);
}
Run Code Online (Sandbox Code Playgroud)


Gen*_*enc 5

灵活的解决方案:

    // define MIN_VALUE, MAX_VALUE and INTERVAL somewhere, such as 3, 18 and 3

    slider.TouchUpInside += delegate {
        touchUpInside();
    };

    /// <summary>
    /// set value to one of intervals
    /// </summary>
    void touchUpInside(){

        // get the nearest interval value
        for(int i=MIN_VALUE; i<=MAX_VALUE; i=i+INVERVAL){

            if(slider.Value > i && slider.Value < i + INVERVAL){
                if(slider.Value - i < i + INVERVAL - slider.Value){
                    slider.Value = i;
                }else{
                    slider.Value = i + INVERVAL;
                }

                break;
            }
        }           
    }
Run Code Online (Sandbox Code Playgroud)