如何为等待命令添加标签值?

时间:2017-10-05 01:29:52

标签: ios swift delay iphone-vibrate

我正在创建一个应用程序,它可以通过两者之间的可定制中断来振动。我有一个编号为0-50的滑块。并将其四舍五入到最接近的整数,然后将其显示在我的标签中。我现在正在尝试执行命令:

@IBOutlet weak var amount: UILabel!

@IBAction func slider1(_ sender: UISlider) {

    amount.text = String(Int(sender.value));

}

@IBAction func vibrator(_ sender: UISlider) {

   AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)

    (the wait goes here but I don't know how to add it)
}

如果可能,在wait命令中我想将标签值除以10。 它不一定是专门的等待命令,只是延迟它。

提前致谢!

1 个答案:

答案 0 :(得分:1)

这是执行此操作的最佳方式:

DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 1.0) {
    // this runs after a 1.0 second wait.
}

在此示例中,函数内部的代码在此处声明的时间后运行:

DispatchTime.now() + 1.0

基本上,1.0是等待的秒数。我假设您说的是,您希望将这段代码更改为:

DispatchTime.now() + Double(Int(amount.text)! / 10)

我希望这是您正在寻找的答案!