SwiftUI中如何限制Slider步长,设置增量为0.1?
SwiftUI Slider 设置0.1步长的解决方案
你只需要给Slider添加step参数并将值设为0.1,就能让滑块每次仅以0.1为增量变化。另外,当前代码直接用description显示数值可能会出现多位小数的情况,建议格式化输出保留一位小数,让显示更直观。
修改后的完整代码如下:
@State private var introTextBackgroundColor = Color.white @State private var introTextBackgroundOpacity = 0.3 HStack { Text("Opacity") // 格式化显示为一位小数,避免浮点数精度导致的异常显示 Text(String(format: "%.1f", introTextBackgroundOpacity)) } // 通过step参数指定滑块的最小增量为0.1 Slider(value: self.$introTextBackgroundOpacity, in: 0.0...1.0, step: 0.1)
关键说明:
step: 0.1限制了滑块的每次滑动增量,确保数值只会是0.0、0.1、0.2……1.0这类符合要求的数值- 使用
String(format: "%.1f", ...)格式化文本,能让显示的数值始终保持一位小数,避免出现类似0.30000000000000004这类因浮点数精度问题产生的异常结果
内容的提问来源于stack exchange,提问作者Nawaf
相关产品推荐
相关产品推荐

