1

我正在制作一个应用程序,该应用程序之间可自定义中断。我有一个编号为 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)
}

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

提前致谢!

4

1 回答 1

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)

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

于 2017-10-05T06:52:06.323 回答