cocos2dx 2.2.5
在layer初始化的时候设置了
this->setKeypadEnabled(true);
同时实现了virtual void keyBackClicked() {}
但是使用android手机运行程序时,点击back键无效,从eclipse上看到有如下log:
no keyboard for id 0
Using default keyMap: /system/usr/keychars/qwerty.kcm.bin
这个 back的键值 还是自己获取吧。。。各种手机 不同键值 的。
貌似原因找到了。
在这个scene中,我放置了两个layer,对于其中一个的layer初始化的时候没有初始化父类。
在这个layer中加入
if(!CCLayer::init())
{
return false;
}
然后就可以接收到手机按键的响应了。
希望可以给同样遇到类似问题的新同学一些帮助。
PS:在这里还有个问题,在一个scene中有多个layer的情况下,1,我是否可以只需要对其中一个layer设置setKeypadEnabled(true);,并实现相应的keyBackClicked就可以了?2,还是需要每个layer上都必须这样做一次(个人觉得应该不用这样吧)?
如果是1的话,我需要怎样确定在哪个layer上设置了,有什么规则么?