iOS版本会影响苹果官方API的一些使用,有些API不能用在某个版本,导致一些奇怪的现象,我在开发的过程中遇到获取验证码成功后倒计时不会动,是button setTitle使用的API有问题。直接上代码。
- (void)findtime{
dispatch_async(dispatch_get_main_queue(), ^{
timeCount--;
NSLog(@"timeCount=%ld",(long)timeCount);
if (timeCount <= 0) {
[findTimer invalidate];
findGetCodeNumberButton.enabled = YES;
[findGetCodeNumberButton setTitle:@"获取" forState:UIControlStateNormal];
findGetCodeNumberButton.backgroundColor = buttonBackGroundColor;
}else{
findGetCodeNumberButton.titleLabel.text = [NSString stringWithFormat:@"%lds",(long)timeCount];//适合iOS7用。
[findGetCodeNumberButton setTitle:[NSString stringWithFormat:@"%lds",(long)timeCount] forState:UIControlStateNormal];//适合iOS7 一上版本,单独使用这个在iOS7上会用问题,两者使用会没有那种闪动的效果。
[findGetCodeNumberButton setNeedsDisplay];
}
});
}