如何从NSTimer目标将参数传递给自定义选择器?

时间:2010-09-07 05:56:08

标签: iphone

如何在userInfo电话中使用NSTimer对象,例如

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;

我想将某些参数发送到自定义选择器。

2 个答案:

答案 0 :(得分:3)

userInfo参数仅供参考。

- (void)onTimer:(NSTimer *)timer 
{
   NSLog(@"User Info %@", [timer userInfo] );
}

答案 1 :(得分:0)

难点在于您需要将参数(即使它们不是对象)包装成单个对象,即使它们超过1。创建一个临时的NSDictionary,并使用键控参数填充它。或者您可以创建一个自定义类来保存所需的参数,并创建并填充该类的对象(alloc,initWithMy42Parameters :)以作为userInfo传递。