如何在 Swift 中为 UISlider 的值添加百分号

Posted

技术标签:

【中文标题】如何在 Swift 中为 UISlider 的值添加百分号【英文标题】:How do I add a percent sign to value from UISlider in Swift 【发布时间】:2019-07-03 15:31:04 【问题描述】:

当您快速移动滑块时,我想在 UISlider 的值中添加一个百分号作为 UILabel 中的字符串。

这是我已经尝试过的。

@IBOutlet weak var label2: UILabel!

@IBAction func slider2(_ sender: UISlider) 
    let val1 = String(Int(sender.value))
    label2.text = String(format: "%.2f%%", val1)

我原以为标签会显示 25.00% 之类的内容,并在您移动滑块时发生变化,但即使在移动滑块后它也只显示 0.00%。

【问题讨论】:

你在使用sliderValueChanged吗? 【参考方案1】:

val1 是一个 String,由滑块的浮点值的 Int 创建。只需摆脱val1 并使用滑块的值。

@IBAction func slider2(_ sender: UISlider) 
    label2.text = String(format: "%.2f%%", sender.value)

请注意,最好将NumberFormatter.percentnumberFormat 一起使用,而不是使用String(format:)。这样,该值的格式就适合用户的区域设置。

【讨论】:

谢谢,您提供的代码效果很好,但我同意您使用 NumberFormatter 的建议。

以上是关于如何在 Swift 中为 UISlider 的值添加百分号的主要内容,如果未能解决你的问题,请参考以下文章

Swift:将 UISlider 捕捉到最接近的值

Swift - 在另一个函数中使用来自 UISlider IBAction 的值

如何在 Swift 中自定义 UISlider 值

在 Objective C 中为 UISlider 创建没有情节提要的 Outlet 和 Action

如何在 Swift 中使用 UISlider 更改 UIImageView 中的图像

swift 3:如何添加 UISlider?