UISlider 最大值调整



我有三个滑块,这些滑块显示了不同元素的百分比,我需要的最大值是 100 (a+b+c=100)。

现在,这些都相互依赖,并有助于制作饼图。

目前都可以设置为最大值,即 100。

如何使这种依赖性和最大值在逻辑上。

提前感谢。

在处理滑块更改的方法中,根据当前滑块调整所有滑块的最大值,例如:

- (void) sliderChanged:(UISlider*)sender{
    slider1.maximumValue = 100 - slider2.value - slider3.value;
    // etc
}

编辑:调整最大值确实可能导致不行为。相反,为了确保总和不超过 100,您可以手动调整滑块的值(如果超出预期):

- (void) sliderChanged:(UISlider*)sender{
    //sender is slider1
    sender.value = MIN(sender.value, 100 - slider2.value - slider3.value);
    // etc
}

最新更新