UISlider最大值调整

发布于 2024-11-06 23:04:53 字数 151 浏览 2 评论 0原文

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

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

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

如何使这种依赖关系和最大值逻辑一致。

提前致谢。

I am having three sliders and these shows the percentages for different elements what i need the max value of all is 100 (a+b+c=100).

Now these all are dependent to each other and helps in making a pie chart.

currently all can set to max value that is 100.

how can make this dependency and max value logically.

Thanx in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半枫 2024-11-13 23:04:53

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

- (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
}

In methods where you handle your sliders changes adjust maximum values for all sliders depending on current ones, e.g.:

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

Edit: Adjusting maximum value may indeed lead to not behaviour. Instead to ensure that the sum does not exceed 100 you can manually adjust slider's value if it is more than desired:

- (void) sliderChanged:(UISlider*)sender{
    //sender is slider1
    sender.value = MIN(sender.value, 100 - slider2.value - slider3.value);
    // etc
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文