Вызов метода класса из неклассового метода - PullRequest
1 голос
/ 17 мая 2011

Следующий фрагмент кода отказывается компилироваться, потому что метод: «FollowPlayer» является методом класса с доступом на уровне класса.Как правильно разрешить NSTimer вызывать + (void) FollowPlayer?

- (void)awakeFromNib{zombie_size=4; timer=[NSTimer scheduledTimerWithInterval: 1.0 target:self selector:@selector(FollowPlayer) userInfo:nil repeats: NO];}

+ (void)FollowPlayer: NSTimer{}

Ответы [ 3 ]

2 голосов
/ 17 мая 2011

Измените цель с 'self' на [MyClass class], где MyClass - это имя вашего класса.

1 голос
/ 17 мая 2011

Эй. Можете ли вы проверить, что метод, который вы вызываете, scheduledTimerWithTimeInterval? В вашем коде он называется scheduledTimerWithInterval ... отсутствует Time часть

1 голос
/ 17 мая 2011

Вы уверены, что это не просто синтаксическая ошибка?Вы можете сделать это?

- (void)awakeFromNib{zombie_size=4; timer=[NSTimer scheduledTimerWithInterval: 1.0 target:self selector:@selector(FollowPlayer:) userInfo:nil repeats: NO];}
+ (void)FollowPlayer:(id)userInfo { NSLog(@"Timer called with user info %@", userInfo); }
...