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メソッドを定義することで、警告が表示されません。
詳細情報を、+シーンが所属:しかしでコンパイル状態のすべてがあなたが渡されたすべてのクラスは、基本クラスを渡し、その後
+(id) scene
方法でいくつかの基本クラスから派生されることがわかっている場合