swift Timer 定时器

方式1

var timer = Timer.scheduledTimer(timeInterval: TimeInterval(curTimeInterval), target: self, selector:#selector(self.xxx), userInfo: nil, repeats: true)

方式2

var timer = Timer(timeInterval: TimeInterval(curTimeInterval), target: self, selector: #selector(self.animate), userInfo: nil, repeats: true)
RunLoop.current.add(timer, forMode: .common)
timer?.fire()

这种定时器的创建需要使用 fire 来启动定时器。否则,该定时器不起作用。如果定时器不添加到 RunLoop 中,在重复模式下定时器只执行一次。

  • 设置runloop mode
   RunLoop.current.add(timer, forMode: .common)
  • 取消定时器timer
if timer != nil {
            timer?.invalidate();
            timer = nil;
        }

你可能感兴趣的:(swift Timer 定时器)