1

使用 CCMenu 我创建了两个向上和向下按钮 这是代码

    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 为精灵分配添加选择器,因此当您向下/向上触摸精灵时,将调用选择器方法。因此,当触摸“向上”时,将一个布尔值设置为真,当触摸“向下”时,将另一个布尔值设置为真。

现在在 update/tick 方法中检查哪个布尔值为 true,然后移动精灵。

完成移动后,在 touchesEnded 方法中只需将这些布尔值设置为 false。

于 2013-03-06T14:05:28.550 回答