IOS语法关于NStimer中scheduledTimerWithTimeInterval方法传参的问题

avatar
作者
筋斗云
阅读量:7

在使用scheduledTimerWithTimeInterval方法创建NSTimer时,如果需要传递参数,可以使用userInfo参数来传递额外的数据。

下面是一个示例代码:

- (void)startTimerWithInterval:(NSTimeInterval)interval { NSDictionary *userInfo = @{@"param1": @"value1", @"param2": @"value2"}; NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:interval target:self selector:@selector(timerFired:) userInfo:userInfo repeats:YES]; } - (void)timerFired:(NSTimer *)timer { NSDictionary *userInfo = timer.userInfo; NSString *param1 = userInfo[@"param1"]; NSString *param2 = userInfo[@"param2"]; // 使用传递的参数进行相关操作 NSLog(@"param1: %@, param2: %@", param1, param2); } 

startTimerWithInterval方法中,通过userInfo参数将需要传递的参数存储在一个NSDictionary对象中。然后,在timerFired:方法中,通过timer.userInfo获取到传递的参数,并进行相关操作。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!