首页 > 系统 > iOS > 正文

iOS 验证码按钮倒计时功能

2020-07-26 02:44:33
字体:
来源:转载
供稿:网友

在app 注册或者登录 需要验证码的地方、为了避免短时间内刷验证码、往往会加上一层验证。

倒计时结束后、可以重新获取!

代码实现如下:

// _CountdownTime 倒计时总时间;//_timer 定时器- (void)startTime:(UIButton *)VerificationCodeButton { __block NSInteger timeout = [_CountdownTime integerValue]; 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, ^{  if(timeout<=0){   dispatch_source_cancel(_timer);   dispatch_async(dispatch_get_main_queue(), ^{    [VerificationCodeButton setTitle:@"重新获取" forState:UIControlStateNormal];    VerificationCodeButton.userInteractionEnabled = YES;    VerificationCodeButton.alpha = 1.0;    VerificationCodeButton.backgroundColor = [UIColor whiteColor];   });  } else {   NSString *strTime = [NSString stringWithFormat:@"%lds", (long)timeout];   dispatch_async(dispatch_get_main_queue(), ^{    [VerificationCodeButton setTitle:strTime forState:UIControlStateNormal];    VerificationCodeButton.userInteractionEnabled = NO;    VerificationCodeButton.backgroundColor = [UIColor lightTextColor];   });   timeout--;  } }); dispatch_resume(_timer);}

总结

以上所述是小编给大家介绍的iOS 验证码按钮倒计时功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表