1、一般情况,使用 self performSelector:SEL withObject:id方法
[self performSelectorOnMainThread:@selector(testAA:) withObject:[NSArray arrayWithObjects:@"1",@"2", nil] waitUntilDone:NO];
-(void) testAA:(NSArray*)data{
if (data==nil||data.count!=2) {
return;
}
NSInteger num=[(NSString*)data[0] intValue];
NSInteger index=[data[1] intValue];
}
2、NSTimer:将传参的对象储存在了NSTimer的userInfo的字典中。
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setObject:oldView forKey:@"oldView"];
[NSTimer scheduledTimerWithTimeInterval:0.0 target:self selector:@selector(onTimer:) userInfo:dict repeats:NO];
[dict release];
- (void)onTimer:(NSTimer *)timer {
UIView *oldView = [[timer userInfo] objectForKey:@"oldView"];
}
3、UIButton类:通过设置tag来使用
UIButton * markButton=[[UIButton alloc] initWithFrame:CGRectMake(280, 0, 30, 30)];
markButton.tag= 参数值; //这里是你要传递的参数值
[markButton addTarget:self action:@selector(addMark:) forControlEvents:UIControlEventTouchUpInside];
-(BOOL) addMark:(UIButton *)btn {
NSLog(@"%d",btn.tag];
}
本文深入探讨Swift中按钮参数传递及定时器的使用技巧,包括按钮事件处理、参数值设定和定时任务执行。通过实例演示如何在按钮点击事件中传递参数值,并利用定时器实现周期性任务。同时,展示了如何通过设置定时器的userInfo属性存储额外信息,为后续操作提供便利。
579

被折叠的 条评论
为什么被折叠?



