Xcode Swift 3 计时器错误

标签: Xcode Swift
发布时间: 2017/1/22 20:58:29
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

此代码必须被转换为 Swift 3。

func checkIfCorrect (_ buttonPressed:Int) {
        if buttonPressed == playlist[numberOfTaps] {
            if numberOfTaps == playlist.count - 1 { // we have arrived at the last item of the playlist

                let time = DispatchTime(uptimeNanoseconds: DispatchTime.now()) + Double(Int64(NSEC_PER_SEC)) / Double(NSEC_PER_SEC)

                DispatchQueue.main.asyncAfter(deadline: time, execute: { 
                        self.nextRound()
                })

                return
            }

代码也会返回一个错误,说"无法转换类型 'DispatchTime' 的值预期的参数类型 UInt64"。这很好的修复会是什么?

解决方法 1:

Swift 3 容易得多

例如 DispatchTime 的第二次从现在是︰

let time : DispatchTime = .now() + .seconds(1)

这些其他单位也是可用的:

  • .milliseconds()
  • .microseconds()
  • .nanoseconds()
官方微信
官方QQ群
31647020