cocos2dx 监听android设备按键响应的方法很简单,直接上代码
注册一个Listener,方法跟触摸监听一样,3.x以后做法都是这样
auto listener = EventListenerKeyboard::create();
listener -> onKeyReleased = CC_CALLBACK_2(HelloWorld::onKeyReleased, this);
//CC_CALLBACK_2 表示回调函数有两个参数是必须的
Director::getInstance() -> getEventDispatcher() -> addEventListenerWithSceneGraphPriority(listener, this);
然后再写一个函数,(如果监听得不多的话 也可以选择用lamda的方式)
.h
void onKeyReleased(EventKeyboard::KeyCode keycode,Event *pEvent);
.cpp
void HelloWorld::onKeyReleased(EventKeyboard::KeyCode keycode, cocos2d::Event *pEvent)
{
switch (keycode) {
case cocos2d::EventKeyboard::KeyCode::KEY_BACK:
log("KEY_BACK");
break;
case cocos2d::EventKeyboard::KeyCode::KEY_MENU:
log("KEY_MENU");
break;
default:
break;
}
android常用的就是这两个,windows下按键就多了。。。不过方法也是一样