iOS实现手机获取验证码倒计时效果

 更新时间:2017年07月24日 17:33:56   作者:zhao先生  
这篇文章主要为大家详细介绍了iOS实现手机获取验证码倒计时效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

手机获取验证码的倒计时效果,实现很简单,附倒计时效果完整代码

之前做项目使用的是NSTimer做的倒计时效果,效果不太好。今天学习了下用GCD做,效果还是不错的。

关键代码如下:(完整代码)

//创建一个全局并非队列
  dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
   //创建一个定时器
    _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
   //配置定时器,每秒执行
   dispatch_source_set_timer(_timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0);
   //创建事件处理器
   dispatch_source_set_event_handler(_timer, ^{
    timeout --;
     if (timeout <= 0) {
       //定时器结束,关闭
        dispatch_source_cancel(_timer);
       _timer = nil;
       //回到主线程刷新UI
       dispatch_async(dispatch_get_main_queue(), ^{
       [_btn setTitle:@"获取验证码" forState:UIControlStateNormal];
       });
     }
    else
 {
  //回到主线程刷新UI
   dispatch_async(dispatch_get_main_queue(), ^{
     [_btn setTitle:[NSString stringWithFormat:@"%ds后重新获取",timeout] forState:UIControlStateNormal];
     });
     }
    });
  //启动定时器
dispatch_resume(_timer);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • iOS自定义水平滚动条、进度条

    iOS自定义水平滚动条、进度条

    这篇文章主要为大家详细介绍了iOS自定义水平滚动条、进度条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • iOS10 权限崩溃问题详解及解决方案

    iOS10 权限崩溃问题详解及解决方案

    这篇文章主要介绍了iOS10 权限崩溃问题详解及解决方案的相关资料,需要的朋友可以参考下
    2016-11-11
  • iOS实现文件切片储存并且上传(仿断点续传机制)

    iOS实现文件切片储存并且上传(仿断点续传机制)

    这篇文章主要给大家介绍了关于iOS实现文件切片储存并上传仿断点续传机制的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-12-12
  • iOS 对view进行截图的示例代码

    iOS 对view进行截图的示例代码

    本篇文章主要介绍了iOS 对view进行截图的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • 关于iOS中属性变量setter与getter方法的理解

    关于iOS中属性变量setter与getter方法的理解

    这篇文章主要给大家介绍了关于iOS中属性变量setter与getter方法的相关资料,文章介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • IOS开发第三方语音-微信语音

    IOS开发第三方语音-微信语音

    微信语音开放平台致力于为开发者提供免费的语音技术,目前已经开放的语音技术包括在线语音识别、在线语音合成等,下面通过本篇文章给大家介绍IOS开发第三方语言-微信语言,需要的朋友可以一起来学习下
    2015-08-08
  • ios实现简单随便移动的AR功能

    ios实现简单随便移动的AR功能

    这篇文章主要为大家详细介绍了ios实现简单随便走的AR功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • iPhoneX无导航栏页面适配问题解决方案

    iPhoneX无导航栏页面适配问题解决方案

    这篇文章主要介绍了iPhoneX无导航栏页面适配问题解决方案,原全屏适配在iPhoneX会由于安全区域的变化导致显示不全,本文给大家介绍的非常详细,需要的朋友可以参考下
    2017-11-11
  • 检测iOS设备是否越狱的方法

    检测iOS设备是否越狱的方法

    这篇文章主要介绍了检测iOS设备是否越狱的方法,代码基于传统的Objective-C,需要的朋友可以参考下
    2015-10-10
  • iOS之UIWebView无法获取web标题的解决方法

    iOS之UIWebView无法获取web标题的解决方法

    这篇文章主要为大家详细介绍了iOS之UIWebView无法获取web标题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07

最新评论