5

質問は私がそれについて言わなければならないすべてです。Android NDKbackでなどの特別なキープレスを処理する方法を知る必要があります。menuCocos2dX を使用しているので、Cocos2dX 固有の回答をいただければ幸いです。

4

4 に答える 4

7

cocos2dx では、それぞれCCLayerが機能を追加するためにオーバーライドできる次のメソッドを取得します。

class CC_DLL CCKeypadDelegate
{
public:
    // The back key clicked
    virtual void keyBackClicked() {}

    // The menu key clicked. only avialble on wophone & android
    virtual void keyMenuClicked() {};
};

CCLayerから継承しCCKeypadDelegateます。そして、各画面はこれらの機能を実装できます。

于 2012-05-28T08:49:55.343 に答える
1

Cocos2d-x では、その実装を行う必要があります

 virtual void keyBackClicked();

そしてこれも

 this->setKeyPadEnable(true);

.cpp クラスで

于 2013-11-13T11:34:35.330 に答える
1

キーパッドを有効にする:this->setKeypadEnabled(true);

onKeyReleased メソッドをオーバーライドします。 virtual void onKeyReleased(EventKeyboard::KeyCode keyCode, Event* event);

keyCode を確認します。

void GameScene::onKeyReleased(EventKeyboard::KeyCode keyCode, cocos2d::Event *event)
{
    if (keyCode == EventKeyboard::KeyCode::KEY_BACKSPACE) {
        CCLOG("You pressed back button");
    }
    else if(keyCode == EventKeyboard::KeyCode::KEY_MENU)
    {
        CCLOG("You pressed menu button");
    }
}
于 2014-01-20T11:53:22.567 に答える