Swift 中的计时器2024 年 8 月 29 日 | 阅读 3 分钟 在 Swift 中,定时器用于创建重复任务,以安排延迟工作。 它是一个以前称为 NSTimer 的类。 Swift 的定时器类提供了一种灵活的方式来安排将来发生的工作,可以是一次性的或重复性的。 让我们看看如何创建重复和非重复定时器,使用运行循环,跟踪定时器,以及如何减少它们的能量和功率影响。 创建重复定时器我们可以使用以下语法创建并启动一个重复计数器 语法让我们看一个例子来演示如何创建一个重复计数器 示例在上面的示例中,
参数解释在这个例子中,使用 5 个参数来创建一个定时器。
创建非重复定时器要创建非重复定时器,您只需将 repeats 参数设置为 false。 定时器只会触发一次,之后立即失效。 示例注意:以上代码必须在类上下文中运行,例如在视图控制器类中。 fire() 函数是类的一部分,self 指的是当前的类实例。使用闭包创建定时器在上面的代码中,最后一个参数 block 接受一个闭包。 闭包有一个参数 timer 本身。 在这里,使用 @objc 属性,因为它使 fire() 函数在 Objective-C 中可用。 Timer 类是 Objective-C 运行时的一部分,这就是我们使用 @objc 属性的原因。 重复定时器和非重复定时器之间的区别您必须在创建时指定定时器是重复还是非重复。重复定时器和非重复定时器之间的主要区别是 非重复定时器 触发一次,然后自动失效,因此,它可以防止定时器再次触发。 重复定时器 触发,然后重新安排在同一运行循环中。重复定时器总是根据预定的触发时间表重新安排自己,而不是实际的触发时间。 例如,如果一个定时器被安排在特定时间触发,并且每隔 10 秒触发一次,即使实际触发时间被延迟,预定的触发时间也总是落在原始的 10 秒时间间隔上。 下一篇SwiftyJSON |
我们请求您订阅我们的新闻通讯以获取最新更新。