我想通过计时器将NSMutableDictionary从一个类传递到另一个从计时器调用的类。我在@selector([generateStickFig:enemies])
时遇到错误我尝试了[],但它仍然是错误的。
-(void)awakeFromNib {
//start timer that fires every second
NSMutableDictionary *enemies = [[NSMutableDictionary alloc] init];
[NSTimer scheduledTimerWithTimeInterval:(0.001) target:self selector:@selector([generateStickFig:enemies]) userInfo:nil repeats:YES];
}
-(void) generateStickFig:(NSMutableDictionary *)enemies {
int x = random() % 1000;
if (x == 1) {
stickFig = [[UIButton alloc] initWithFrame:CGRectMake(0, 650, 50, 50)];
[stickFig setBackgroundColor:[UIColor blackColor]];
[stickFig addTarget:self action:@selector(tapFig:) forControlEvents:UIControlEventTouchUpInside];
[enemies setObject:object forKey:[NSString stringWithFormat:@"object%i",i]];
[self.view addSubview:stickFig];
}
}
有什么建议吗?
答案 0 :(得分:1)
尝试
[NSTimer scheduledTimerWithTimeInterval:(0.001) target:self selector:@selector(generateStickFig:) userInfo:enemies repeats:YES];
创建计时器。然后将回调方法更改为
-(void) generateStickFig:(NSTimer *)timer {
NSDictionary *enemies = (NSDictionary *)timer.userInfo;
...
}