在Swift中:如何使用uislider值作为变量来设置旋转速度

时间:2017-02-21 04:45:43

标签: uislider

我已使用以下代码在标签中成功打印了UISlider的值:

 @IBAction func valueChanged(_ sender: UISlider) {

    var currentValue: String = String(Int(sender.value))
    statusLabel.text = currentValue
   }

Label showing UISlider value.

我现在要做的是将此值用作下面代码中的变量“a”,该变量设置精灵的旋转持续时间。

let rotation = SKAction.rotate(byAngle: .pi * -1, duration: a)
    let infiniteRotation = SKAction.repeatForever(rotation)

    centerNode.run(infiniteRotation)

谢谢。

1 个答案:

答案 0 :(得分:0)

只需使用全局变量......

var timeAmount = 0
@IBAction func sliderValueChanged(sender: UISlider) {
   timeAmount = Int(sender.value)
   println("Slider and timeAmount changing to \(timeAmount) ?")
} 

然后在你的旋转函数中,只需使用:

func __somefunction__(some params){

    ...

    let rotation = SKAction.rotate(byAngle: .pi * -1, duration: timeAmount)
    let infiniteRotation = SKAction.repeatForever(rotation)
    centerNode.run(infiniteRotation)

    ...

}