Мне нужно вызвать метод класса для запуска сцены Cocos2D. У меня есть игровой контроллер, в котором я буду проходить в разных состояниях (или слоях для тех, кто знаком с Cocos2D). Смотрите код ниже:Метод класса вызова для параметра класса
-(void)startGameWithState:(Class)s {
[[CCDirector sharedDirector] runWithScene: [s scene]];
}
Дело в том, это работает отлично, но генерирует следующее предупреждение:
No '+scene' method found
как можно лучше, я хочу, чтобы избежать предупреждений, так как это исправить ?
Обновление: Это то, что я сделал.
-(void)changeStateTo:(Class <GameState>)s {
[[CCDirector sharedDirector] runWithScene: [s scene]];
}
Поскольку протокол GameState определяет метод + scene, я не получаю никаких предупреждений.
Больше информации, то + сцена принадлежит к классу, который я передаю во время выполнения, но компилятор не будет знать во время компиляции, следовательно, это предупреждение. – Jaryl