swift学习笔记 - swift3.0用GCD实现计时器

原创 2016年12月26日 11:01:56

swift3.0之后,GCD的语法发生了翻天覆地的变化,从过去的c语法变成了点语法,下面是变化之后用GCD实现计时器的方法:

先贴代码:

// 定义需要计时的时间
var timeCount = 60
// 在global线程里创建一个时间源
let codeTimer = DispatchSource.makeTimerSource(queue:      DispatchQueue.global())
// 设定这个时间源是每秒循环一次,立即开始
codeTimer.scheduleRepeating(deadline: .now(), interval: .seconds(1))
// 设定时间源的触发事件
codeTimer.setEventHandler(handler: {
    // 每秒计时一次
    timeCount = timeCount - 1
    // 时间到了取消时间源
    if timeCount <= 0 {
        codeTimer.cancel()
        }
    // 返回主线程处理一些事件,更新UI等等
    DispatchQueue.main.async {
    }
})
// 启动时间源
codeTimer.resume()

发现改完后的GCD从之前的函数调用变成了现在的面向对象的调用方式了,更正直观和方便了,以上是我的一些总结,谢谢大家的阅读~

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wang631106979/article/details/53884399

swift 简单倒计时

swift 原因写的倒计时,可用于接收短信验证码倒计时
  • NoPolun_iOS
  • NoPolun_iOS
  • 2017年01月07日 23:31
  • 2052

Swift3.0 GCD定时器的使用,实现倒计时,UIDatePicker的使用, 仿写一个活动倒计时的DEMO

Swift3.0 GCD定时器实现倒计时,UIDatePicker的使用, 仿写一个活动倒计时的DEMO
  • feng2qing
  • feng2qing
  • 2017年02月21日 21:19
  • 3984

Swift-免费短信验证码实现及动态倒计时

今天给大家带来一个简单的免费短信验证码实现demo,采用mob的短信验证码SDK,到目前为止还是免费的,只需要简单的注册--》添加个人应用--》获取appkey集apSecret 即可实现。 具体怎...
  • yf275908654
  • yf275908654
  • 2016年01月02日 22:51
  • 3833

swift 3.0 短信验证码倒计时实现

class TCCountDown { private var countdownTimer: Timer? var codeBtn = UIButton() private var remainin...
  • qq_25592881
  • qq_25592881
  • 2017年02月23日 14:53
  • 838

swift 用GCD写的倒计时 防止计时器不准

self.timeCount = 60 var queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) ...
  • u013022995
  • u013022995
  • 2015年06月11日 14:44
  • 1169

swift实现有特效的倒计时Button

  • 2015年08月01日 02:23
  • 54KB
  • 下载

自定义倒计时按钮swift版

// //  sendBtn.swift //  自定义验证码按钮 // //  Created by apple on 16/4/22. //  Copyright ©...
  • koocui
  • koocui
  • 2016年04月22日 14:27
  • 1343

Swift 4.0中 GCD定时器写法,及延时操作

Swift 4.0中对 GCD定时器的写法做了很多改进,使之更符合Swift的语言特点,比OC的语法看起来是简明清晰了不少/// GCD定时器倒计时⏳ /// - timeInterval: 循环...
  • zxw_xzr
  • zxw_xzr
  • 2017年10月23日 13:37
  • 2493

秒杀活动倒计时 iOS代码实现

IOS关于大型网站抢购、距活动结束,剩余时间倒计时的实现代码,代码比较简单,大家根据需求适当的添加修改删除代码 1.定义4个 Label 来接收倒计时...
  • qq_19678579
  • qq_19678579
  • 2017年05月09日 16:02
  • 1456

Swift封装的一种带动画的倒计时Button

哇,一转眼都凌晨1:30了(可怜的我还在写博客,不过趁这段时间有空多谢谢,多总结总结是没有错的,希望能和大家一起进步),终于把今天,不对,昨天突然想实现的一个倒计时Label写好了,感觉像现在app中...
  • Loveway_
  • Loveway_
  • 2015年08月01日 02:16
  • 2196
收藏助手
不良信息举报
您举报文章:swift学习笔记 - swift3.0用GCD实现计时器
举报原因:
原因补充:

(最多只允许输入30个字)