iOS实现手机获取验证码倒计时效果
发布时间 - 2026-01-11 02:29:50 点击率:次手机获取验证码的倒计时效果,实现很简单,附倒计时效果完整代码

之前做项目使用的是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手机验证码倒计时
# IOS实现验证码倒计时功能(一)
# iOS获取短信验证码倒计时的两种实现方法
# Swift实现iOS应用中短信验证码倒计时功能的实例分享
# IOS实现验证码倒计时功能(二)
# iOS 验证码按钮倒计时功能
# iOS获取验证码倒计时效果
# iOS发送验证码倒计时应用
# iOS实现短信验证码倒计时
# iOS登录时验证手机号与倒计时发送验证码问题详解
# 倒计时
# 验证码
# 创建一个
# 的是
# 很简单
# 大家多多
# 不太好
# brush
# class
# center
# pre
# queue
# dispatch_get_global_queue
# dispatch_queue_t
# cpp
# NSString
# align
# ds
# br
# dispatch_source_create
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
制作公司内部网站有哪些,内网如何建网站?
,南京靠谱的征婚网站?
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
怎么用AI帮你设计一套个性化的手机App图标?
使用spring连接及操作mongodb3.0实例
如何在阿里云虚拟主机上快速搭建个人网站?
JS碰撞运动实现方法详解
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
Laravel如何实现API速率限制?(Rate Limiting教程)
WordPress 子目录安装中正确处理脚本路径的完整指南
Laravel如何使用Sanctum进行API认证?(SPA实战)
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
,在苏州找工作,上哪个网站比较好?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
利用JavaScript实现拖拽改变元素大小
Laravel如何使用Collections进行数据处理?(实用方法示例)
Laravel集合Collection怎么用_Laravel集合常用函数详解
如何撰写建站申请书?关键要点有哪些?
Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
手机软键盘弹出时影响布局的解决方法
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
如何在腾讯云免费申请建站?
大型企业网站制作流程,做网站需要注册公司吗?
如何有效防御Web建站篡改攻击?
EditPlus中的正则表达式 实战(2)
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
如何在 Pandas 中基于一列条件计算另一列的分组均值
JavaScript如何操作视频_媒体API怎么控制播放
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
Laravel事件监听器怎么写_Laravel Event和Listener使用教程
Internet Explorer官网直接进入 IE浏览器在线体验版网址
如何利用DOS批处理实现定时关机操作详解
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
JS去除重复并统计数量的实现方法
如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】
JS经典正则表达式笔试题汇总
Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南
Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作
zabbix利用python脚本发送报警邮件的方法
昵图网官方站入口 昵图网素材图库官网入口
html如何与html链接_实现多个HTML页面互相链接【互相】
Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
北京的网站制作公司有哪些,哪个视频网站最好?
实例解析angularjs的filter过滤器
东莞市网站制作公司有哪些,东莞找工作用什么网站好?

