0

例を挙げて説明します。

たとえば、CocosBuilder でScene.ccbi とそのカスタム クラスSceneクラスを作成しました。

Scene header内で、メソッドを定義しました:

-(void) doSomething;

AppDelegate /ViewControllerで、CCBReader を呼び出して CCScene を作成します。

CCScene* myScene = [CCBReader sceneWithNodeGraphFromFile:@"Scene.ccbi"];

つまり、Scene.m にはそのインスタンスがあります。

この時点で、AppDelegate/ViewController は Scene のインスタンス メソッドにどのようにアクセスできますか? たとえば、ViewController 内:

Scene *ccbinstrance; // this is the part I don't know to link Scene*
[cbbinstance doSomething];

ありがとうございました!

4

1 に答える 1

0

誰もこれについて良い答えを持っていないようです。この問題を解決する汚い方法があります。静的なシングルトン オブジェクトを作成し、この Scene の参照を保存します。そして、そのシングルトン オブジェクトを使用して、別の viewController から呼び出すことができます。

ちょっと汚いですが、現時点では私のために働いています...

于 2013-03-25T13:08:13.700 に答える