我有三个滑块,这些显示不同元素的百分比,我需要的最大值是100(a + b + c = 100)。
现在这些都是相互依赖的,有助于制作饼图。
目前所有人都可以设置为100的最大值。
如何在逻辑上制作此依赖关系和最大值。
提前完成。
答案 0 :(得分:4)
在处理滑块的方法中,根据当前滑块调整所有滑块的最大值,例如:
- (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
}