在本文中,我们将看到如何使用Swift延迟方法调用。在这里,我们将看到如何以两种方式实现相同的目标,
所以我们开始吧
我们将在Playground中看到两个示例,
步骤1-打开Xcode→New Playground。
在第一种方法中,我们将使用asyncAfter(deadline:execute:)实例方法,该方法计划在指定时间执行工作项并立即返回。
步骤2-在Playground中复制以下代码并运行,
func functionOne() { let delayTime = DispatchTime.now() + 3.0 print("one") DispatchQueue.main.asyncAfter(deadline: delayTime, execute: { hello() }) } func hello() { print("text") } functionOne()
在这里,我们创建一个函数functionOne,首先声明延迟时间为3秒。然后,我们使用asyncAfter,其中将延迟时间作为参数,并要求在3秒后html" target="_blank">执行hello()函数。
如果我们先运行上述程序,则首先打印“one”,然后在3秒钟后打印“text”。
在第二种方法中,我们将使用NSTimer,
您可以在Xcode→Single View应用程序中复制以下代码
class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() print("one") Timer.scheduledTimer(timeInterval: 3, target: self, selector: #selector(ViewController.hello), userInfo: nil, repeats: false) } @objc func hello() { print("text") } }
运行该应用程序,您将看到相同的输出,将输出 one,并在3秒钟后输出 text。
问题内容: 我希望能够在指定的延迟后调用以下方法。在目标c中,有类似以下内容: android和java中的此方法是否等效?例如,我需要能够在5秒钟后调用一个方法。 问题答案: Kotlin Java
问题内容: 我在延迟游戏中电脑的移动时遇到问题。 我找到了一些解决方案,但在我的情况下它们不起作用,例如 我试图将此与功能一起使用,但也没有任何效果。 还有其他可能性吗? 问题答案: 迅捷3 使用GCD: 或使用计时器: 迅捷2 使用GCD: 或使用计时器:
问题内容: 我想暂时暂停我的应用。换句话说,我希望我的应用执行代码,但是在某个时候暂停4秒钟,然后继续执行其余的代码。我怎样才能做到这一点? 我正在使用Swift。 问题答案: 如果要从UI线程调用该方法,则可以考虑使用或调度计时器,而不是进行睡眠(这会锁定您的程序)。 但是,如果您确实需要延迟当前线程: 这使用UNIX中的功能。
如标题所示,在中,是否有方法在延迟(例如1秒)后调用函数?
问题内容: 在早期版本的Swift中,可以使用以下代码创建延迟: 但现在,斯威夫特3时,Xcode自动改变6个不同的东西,但随后出现以下错误:“无法转换到预期值又名”。 在Swift 3中运行一系列代码之前,如何创建延迟? 问题答案: 经过大量研究,我终于找到了答案。 这会在Swift 3和Swift 4中创建所需的“等待”效果。
本文向大家介绍一定延迟后如何调用jQuery函数?,包括了一定延迟后如何调用jQuery函数?的使用技巧和注意事项,需要的朋友参考一下 要在一定延迟后调用jQuery函数,请使用方法。在这里,几秒钟后调用jQuery函数。 您可以尝试运行以下代码,以了解如何使用jQuery中的方法在延迟后调用jQuery函数- 示例