2

有没有一种简单的方法来处理层内的关键输入?我知道使用触摸输入您可以只使用 ccTouchesEnded。keyPressed 有类似的功能吗?如果不是,您将如何获得按键?

4

1 回答 1

2

两天前我开始使用 cocos2d,我也有同样的问题。

我找到了一种将关键事件检测到游戏中的方法。

您必须在游戏类中启用关键事件检测

// Enable keys
this.setIsKeyEnabled(true);

并覆盖

@Override
public boolean ccKeyDown(int keyCode, KeyEvent event) {

    Log.d("ccKeyDown", "Entered");

    return super.ccKeyDown(keyCode, event);
}

在您的 Android 活动中覆盖 KeyDown 并将事件发送到游戏类

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    Log.d("Activity", "key entered");

    return CCDirector.sharedDirector().onKeyDown(event);

}

希望对您有所帮助:) 或者您找到了解决方案...很久了 xD 欢呼

于 2012-06-28T07:47:49.400 回答