- (void)creatTimer{
// id userInfo = @"貴哥jk";
// id userInfo = @{@"姓名": @"貴哥jk", @"email":@"942513675@qq.com"};
// id userInfo = @10;
id userInfo = [UIButton new];
((UIButton *)userInfo).tag = 1000;
NSTimeInterval time = 0.5;
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:time target:self selector:@selector(timerSelector:) userInfo:userInfo repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
}
- (void)timerSelector:(NSTimer *)timer{
id userInfo = timer.userInfo;
NSLog(@"%@",userInfo);
UIButton *btn = userInfo;
NSLog(@"%ld",btn.tag);
if (@"條件判斷") {
[timer invalidate];
timer = nil;
}
}
解析
類方法:scheduledTimerWithTimeInterval:(NSTimeInterval) time target:(id) aTarget selector:(SEL)aSelector userInfo:(nullable id)userInfo repeats:(BOOL)yesOrNo;可以傳遞一個 id 類型的參數(shù)