当触摸android上的按钮时如何移动到cocos2d-x中的另一个场景

时间:2015-12-14 07:21:28

标签: android c++ cocos2d-x

由cocos2dx创建的游戏。在活动场景中,当我触摸android上的后退按钮时,我该如何退出它!可以给出相同的例子吗?我在构造函数中编写了这段代码。 我希望如果我按下Android中的后退按钮键移动到另一个场景,任何人都可以发送示例代码,这个我的代码应该移动到MainmenuScene,但不会移动。

auto _keyListener = EventListenerKeyboard::create();
      _keyListener->setEnabled(true);
      _keyListener->onKeyReleased =     CC_CALLBACK_2(Jig_GameLayer::onKeyReleased, this);
    _eventDispatcher-   >addEventListenerWithSceneGraphPriority(_keyListener, this);


void Jig_GameLayer::onKeyReleased(EventKeyboard::KeyCode keyCode, Event*   unused_event)
{   if(keyCode == EventKeyboard::KeyCode::KEY_BACK)
    {
       Director  :: getInstance()->replaceScene( TransitionCrossFade::                 create(1.0f ,MainmenuScene::create()));     
    } 
}

1 个答案:

答案 0 :(得分:1)

在init()中添加:

this->setKeyboardEnabled(true);

创建功能:

void MenuScene::onKeyReleased(EventKeyboard::KeyCode keyCode, Event *event){
    if(keyCode == EventKeyboard::KeyCode::KEY_BACK){
        onBackPressed();
    }
}

然后在“onBackPressed()”处理后退按钮逻辑。然后你还可以在屏幕上添加一些“视觉”按钮,并从中调用onBackPressed。

另外不要忘记在.h文件中添加声明:

virtual void onKeyReleased(EventKeyboard::KeyCode keyCode, Event *event);
void onBackPressed();