【问题标题】:How to wait a given time to run an action-SWIFT如何等待给定时间运行操作-SWIFT
【发布时间】:2015-03-14 22:49:24
【问题描述】:

我想知道如何在让控制台计算给定时间后运行操作。例如 3 秒后打印 'hello'。 谢谢!!

【问题讨论】:

  • 您考虑和尝试了什么?

标签: ios swift


【解决方案1】:

您需要使用NSTimer 类。

示例用法:

var timer = NSTimer.scheduledTimerWithTimeInterval(3, target: self, selector: Selector("sayHello"), userInfo: nil, repeats: true)

你班上的其他地方...

func sayHello() {
    println("Hello")
}

【讨论】:

  • 感谢您的帮助:)
  • @ManewL 乐于提供帮助。
【解决方案2】:

您可以通过以下方式制造延迟! 您可以使用asynAfter 来创建延迟

DispatchQueue.main.asyncAfter(deadline: .now() + <secondsToDelay>) {
   // Put your code here that you want to execute after delay
}

另一种方法是使用 objc 的 perform selector 延迟后调用函数本身

perform(#selector(delayedMethod), with: nil, afterDelay: <secondsToDelay>)

@objc func delayedMethod() {
    print("My delayed method call")
}

当然,您也可以像 Woodstock 的回答一样使用 Timer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-02
    • 2022-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多