滑块未在其他功能中更新

Slider not updating in other functions

我的 Xcode 项目中有一个滑块,范围为数字 0.1 - 1.0。我将其设置为在标签中显示当前值(有效)。我遇到的问题是当我尝试在另一个函数中调用当前值时它不会在该函数中更新。

var currentValue = Float(1.0)

class Hello : UIViewController {

@IBOutlet weak var Slider: UISlider!
@IBOutlet weak var Label: UILabel!

@IBAction func SliderChanged(sender: AnyObject) {
    SliderVar()
}

func SliderVar() {
    var currentValue = Float(Slider.value)
    Label.text = "\(currentValue)"
}

标签正确显示了值。但是,如果我在另一个函数中调用 SlideVar() 函数,它不会显示正确的值。

例如:

func test() {

SlideVar()
println(currentValue)

}

输出显示原始值 1.0,即使滑块和标签不在该值上。有人可以让我知道我做错了什么吗?

去掉SliderVarcurrentValue前面的var。您正在创建一个隐藏 class 属性 的新局部变量,因此 class 属性 值不会更新:

func SliderVar() {
    currentValue = Float(Slider.value)
    Label.text = "\(currentValue)"
}