首页 > 代码库 > ios 使用gcd 显示倒计时

ios 使用gcd 显示倒计时

 

 __block int timeout = 60;//倒计时时间    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);    dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0),NSEC_PER_SEC * 1.0 , 0);//每秒执行    dispatch_source_set_event_handler(timer, ^{        if (timeout <= 0) {            dispatch_source_cancel(timer);            dispatch_async(dispatch_get_main_queue(), ^{                CNSLog(@"获取验证码");                self.getVerificationCodeButton.enabled = YES;                self.getVerificationCodeLabel.text = @"获取验证码";                self.getVerificationCodeLabel.textColor = [UIColor whiteColor];            });        }        else {                        NSString * strTime = [NSString stringWithFormat:@"请稍等(%d秒)",timeout];            dispatch_async(dispatch_get_main_queue(), ^{                CNSLog(@"timeout = %d",timeout);                                self.getVerificationCodeButton.enabled = NO;                self.getVerificationCodeLabel.textColor = UIColorFromRGB(0xe6e6e6);                self.getVerificationCodeLabel.text = strTime;                            });            timeout -- ;        }    });        dispatch_resume(timer);

 

原文:http://blog.csdn.net/fanxun1982/article/details/8678362

 

ios 使用gcd 显示倒计时