Key*_*lia 10 uislider ios swift
我正在使用Swift 3和Xcode 8.2.在斯威夫特很新.我有一个水平UISlider来控制从1到16的音量作为最小值和最大值,并且当我这样做时它返回浮点值print().如何将其值限制为整数?
@IBOutlet var ringValue: UISlider!
@IBAction func ringVolumeSliderChange(_ sender: UISlider)
{
print(sender.value)
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
Nir*_*v D 15
value属性UISlider是Float类型,所以你不能改变它,但你可以将其转换为Int使用Int(sender.value).
@IBAction func ringVolumeSliderChange(_ sender: UISlider) {
print(Int(sender.value))
}
Run Code Online (Sandbox Code Playgroud)
如果您希望Slider仅在步骤中定位,请执行以下操作:
@IBAction func ringVolumeSliderChange(_ sender: UISlider)
{
sender.setValue(sender.value.rounded(.down), animated: true)
print(sender.value)
}
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我假设你已经设置了最小值和最大值.现在,当用户滑动时,滑块会从一个位置跳到另一个位置.
为了使滑块更平滑并一次获取一个结果(当用户停止滑动时),您可以在内部使用这一行viewDidLoad:
ringValue.isContinuous = false
Run Code Online (Sandbox Code Playgroud)
然后您可以选择如何处理其他答案之一的结果。我喜欢 jboi 的答案,因此它将采用离散值。
小智 5
@IBAction func SliderValueChanged(_ sender: UISlider) {
showValueSlider.text = String(format: "The value is:%i",Int(sender.value))
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11021 次 |
| 最近记录: |