私は cocos2D の本を読んでいて、Radar Dish オブジェクトを初期化しようとしています。アニメーションは initAnimations メソッド (init メソッドで呼び出される) で設定されますが、init メソッドは呼び出されません。GameLayer.m では、以下を呼び出す createObjectOfType メソッドを使用します。
RadarDish *radarDish = [[RadarDish alloc] initWithSpriteFrameName:@"radar_1.png"];
したがって、initWithSpriteFrameName は RadarDish のスーパー クラスの init であり、Radar Dish をセットアップします。では、RadarDish.m の init はいつ呼び出されるのでしょうか?? アニメーションが初期化で設定されないため、プログラムがクラッシュします。