0

我有一个类 ButtonLayer,其中有一个名为 redClick 的方法。redClick 的实现看起来像这样..

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

变量 red 是 ButtonLayer 类中的 CCSprite。

我有另一个名为 MainLayer 的类,它继承自 CCLayer。这个类中的场景方法是这样的..

+(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 回答