IOS语法关于NStimer中scheduledTimerWithTimeInterval方法传参的问题
在使用`scheduledTimerWithTimeInterval`方法创建`NSTimer`时,如果需要传递参数,可以使用`userInfo`参数来传递额外的数据。
下面是一个示例代码:
```objective-c
- (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`获取到传递的参数,并进行相关操作。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341