倒计时和数字抽奖

2017-03-22  本文已影响0人  老急急

- (void)viewdidload {

_timeout = 10;

[self getcode];

}

- (void)getcode {

//__block int timeout= timecount; //倒计时时间

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

dispatch_source_t timercade = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue);

dispatch_source_set_timer(timercade,dispatch_walltime(NULL, 0),0.1*NSEC_PER_SEC, 0); //每秒执行

dispatch_source_set_event_handler(timercade, ^{

if(_timeout<=1){ //倒计时结束,关闭

dispatch_source_cancel(timercade);

dispatch_async(dispatch_get_main_queue(), ^{

//设置界面的按钮显示 根据自己需求设置

});

}else{

//int seconds = timeout % 60;

dispatch_async(dispatch_get_main_queue(), ^{

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:0.1];

int randomVal=random() %10;

NSString *strTime = [NSString stringWithFormat:@"%d", randomVal];

self.oneLabel.text = strTime;

int randomVal1=random() %10;

[UIView commitAnimations];

});

_timeout--;

}

});

dispatch_resume(timercade);

}

上一篇 下一篇

猜你喜欢

热点阅读