如何在Android中使用cocos2D处理按键输入?

发布于 2024-12-11 07:16:37 字数 93 浏览 0 评论 0原文

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

Is there a simple way to handle key inputs from within the layer? I know with touch inputs you can just use ccTouchesEnded. Is there a similar function for keyPressed? If not how would you go about getting the key press?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

秋日私语 2024-12-18 07:16:37

前两天开始使用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 欢呼

I start working with cocos2d two days ago, and I had the same question.

I found a way to detect key event into game.

You have to enable key event detection in your game class

// Enable keys
this.setIsKeyEnabled(true);

and override

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

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

    return super.ccKeyDown(keyCode, event);
}

In you Android activity override on KeyDown and dispatch event to game class

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

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

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

}

Hope that helps you :) Or you found solution...Its been a long time xD cheers

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文