无限的uistepper迅速



是否可以在UIStepper上设置无限的最大值?如果没有,是否可以替代计数限制?

a UIStepper使用 Double作为其 maximumValue属性。将其设置为Double.greatestFiniteMagnitude

Double.greatestFiniteMagnitude不是无限的,但真的很大。(≈1.80E 308(。

编辑

实际上,您可以说

stepper.maximumValue = Double.infinity

似乎有效的。

请注意,如果您的步骤值不大,那么当您的价值变得足够大以至于需要显示科学符号时,您将很难显示价值变化。另外,在很大的幅度下,浮点数会失去精度。将非常大的双倍增加一个值1可能不会改变其值。

编辑#2:

我只是尝试过,如果您设置

stepper.maximumValue = Double.greatestFiniteMagnitude

stepper.value = Double.greatestFiniteMagnitude / 2

从理论上讲,当您在步进器上点击 +(默认的 stepValue of 1 of 1(,则值应更改。但是,在Double.greatestFiniteMagnitude/2的值中,值1的变化太小了,无法完全改变该值的Mantissa。在默认的stepvalue 1时,当步进速度为 Double.greatestFiniteMagnitude / 2时,敲击步进不会引起步进值的任何变化。

最新更新