小编Gra*_*eme的帖子

在循环中创建swift 3的延迟

我知道我可以使用followign语法(如何编写Swift 3中的延迟)来延迟Swift 3中的部分代码:

let when = DispatchTime.now() + 2 // change 2 to desired second delay.
DispatchQueue.main.after(when: when) {
// run your code with delay
}
Run Code Online (Sandbox Code Playgroud)

或者类似的帖子:如何在Swift 3中创建调度队列

然而,这些不是我可以使用的延迟方法.我需要在循环中插入一个延迟.例如,假设有一个标签组件和一个按钮.当我单击按钮时,我希望标签连续显示循环变量:

@IBOutlet weak var showIntegers: UILabel!

@IBAction func countNums(_ sender: AnyObject) {

    for i in 1...5 {
        showIntegers.text = String(i)
        //delay code here, sleep(1) doesn't work
    }
}
Run Code Online (Sandbox Code Playgroud)

我使用睡眠作为延迟但是然后应用程序睡眠5秒然后显示5.我连续1秒钟看不到1,2,3,4和5.

我也弄清楚如何在循环中使用DispatchQueue类.感谢您的帮助.

swift swift3

1
推荐指数
1
解决办法
4294
查看次数

标签 统计

swift ×1

swift3 ×1