IOS UISlider非连续近似值

Posted

技术标签:

【中文标题】IOS UISlider非连续近似值【英文标题】:IOS UISlider non continuos approximate value 【发布时间】:2012-02-06 14:20:01 【问题描述】:

我有一个值在 10 到 100 之间的 UISlider。我工作得很好。

除了我希望能够将值增加 5 而不是 1 增加 1。

现在,如果我移动幻灯片,值会线性增加:10、11、12、13、...。

我希望在移动滑块时能够将值增加 5:10、15、20、25、...。

这可能吗?

非常感谢!

【问题讨论】:

【参考方案1】:

使用此代码将幻灯片值增加 5

sliderPosition = (int)(round(mySlider.value/5)*5); 

【讨论】:

【参考方案2】:

这里有一些代码,基于某处的 *** 帖子...

- (IBAction)terrainValueChanged:(id)sender 

    float newStep = roundf((terrainSlider.value) / self.stepValue);
    self.terrainSlider.value = newStep * self.stepValue;
    int intValue = self.terrainSlider.value;
    terrainRating = intValue;


用这个初始化:

    stepValue = 1;
    self.terrainStep = (self.terrainSlider.value) / self.terrainStep;

【讨论】:

谢谢@Paul。杰出的!我最终使用了 round() 函数。我在下面提供了将幻灯片值增加 5 的答案。

以上是关于IOS UISlider非连续近似值的主要内容,如果未能解决你的问题,请参考以下文章

关于在 UISlider 中显示连续滑块值

iOS - 折叠动画 UISlider

在ios中设置uislider的值

iOS 7 - 自定义 UISlider 设计不起作用

如何使用 UISlider 控制 iOS 系统音量

带有渐变层的 iOS UISLider