1

CCMenuを使用して、上下に2つのボタンを作成しました。コードは次のとおりです。

    CCSprite *normlUp = [CCSprite spriteWithFile:@"Up.png"];
    CCSprite *selectedUp = [CCSprite spriteWithFile:@"Up.png"];
    selectedUp.color = ccGREEN;

    CCMenuItemSprite *up = [CCMenuItemSprite itemFromNormalSprite:normlUp selectedSprite:selectedUp target:self selector:@selector(upItemTouched)];
    up.position = CGPointMake(-220, -115);

    CCSprite *normlDown = [CCSprite spriteWithFile:@"Down.jpeg"];
    CCSprite *selectedDown = [CCSprite spriteWithFile:@"Down.jpeg"];
    selectedDown.color = ccGREEN;

    CCMenuItemSprite *down = [CCMenuItemSprite itemFromNormalSprite:normlDown selectedSprite:selectedDown target:self selector:@selector(downItemTouched)];
    down.position = CGPointMake(-220,-140 );

    CCMenu *upDown = [CCMenu menuWithItems:up,down,nil];
    [self addChild:upDown z:4];

upItemTouchedメソッドとdownItemTouchedメソッドの書き方
また、スプライトは画面上でスムーズに移動するはず
です。私はcocos2dを初めて使用するので、簡単な質問を受け入れてください。

4

1 に答える 1

0

CCMenuItemSprite を使用してセレクターをスプライトに追加します。これにより、スプライトを上下にタッチすると、そのセレクター メソッドが呼び出されます。そのため、「上」に触れたときに 1 つのブール値を true に設定し、「下」に触れたときに別のブール値を true に設定します。

update/tick メソッドで true のブール値を確認し、スプライトを移動します。

移動が完了したら、touchesEnded メソッドでこれらのブール値を false に設定するだけです。

于 2013-03-06T14:05:28.550 に答える