0

redClick というメソッドを含むクラス ButtonLayer があります。redClick の実装は次のようになります。

-(void) redClick {
    [red runAction: [CCTintTo actionWithDuration:0.1 red:200 green:200 blue:200]];
}

変数 red は、ButtonLayer クラスの CCSprite です。

CCLayer を継承する MainLayer という別のクラスがあります。このクラスのシーン メソッドは次のようになります。

+(CCScene *) scene
{
    CCScene *scene = [CCScene node];

    overlay = [ButtonLayer node];
    HelloWorldLayer *layer = [HelloWorldLayer node];

    [scene addChild: layer];
    [scene addChild: overlay];

    return scene;
}

MainLayer の ccTouchesBegan メソッドで、[overlay redClick] を呼び出しますが、呼び出しても何も変わりません。CCSprite は変更されません。

4

1 に答える 1

0

オーバーレイ レイヤーを HelloWorldLayer の「レイヤー」に追加します。

+(CCScene *) scene
{
    CCScene *scene = [CCScene node];

    overlay = [ButtonLayer node];
    HelloWorldLayer *layer = [HelloWorldLayer node];

    [scene addChild: layer];
    [layer addChild: overlay];

    return scene;
}
于 2012-07-17T05:56:16.317 に答える