#import "ViewController.h"
@interface ViewController ()
@property (nonatomic,strong) UIButton* btn;
@property (nonatomic,assign) NSInteger i;
@property (nonatomic,strong) NSTimer* timer;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UIButton* btn = [UIButton buttonWithType:UIButtonTypeCustom];
self.btn = btn;
self.i = 0;
btn.frame = CGRectMake(0, 0, 200, 50);
btn.center = self.view.center;
btn.backgroundColor = [UIColor redColor];
[btn setTitle:@"获取验证码" forState:UIControlStateNormal];
[btn addTarget:self action:@selector(doAction:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
}
-(void)doAction:(UIButton*)btn{
NSTimer* timer = [NSTimer scheduledTimerWithTimeInterval:0.1
target:self selector:@selector(ceshi) userInfo:nil repeats:YES];
self.timer = timer;
}
-(void)ceshi{
if (self.i <= 0) {
self.i = 60;
[self.timer invalidate];
self.timer = nil;
NSString* title = [NSString stringWithFormat:@"获取验证码"];
[self.btn setTitle:title forState:UIControlStateNormal];
}else{
self.i --;
}
[UIView animateWithDuration:0.1 animations:^{
if (self.i == 60) {
NSString* title = [NSString stringWithFormat:@"获取验证码"];
}else{
NSString* title = [NSString stringWithFormat:@"%ld秒后重新获取",self.i];
[self.btn setTitle:title forState:UIControlStateNormal];
}
}];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
@end