在头文件中增加函数
virtual void keyBackClicked();//android返回键
virtual void keyMenuClicked();//android菜单键

在init()函数中增加语句this->setIsKeypadEnabled(true);//android 返回键和菜单键支持

//this->setKeypadEnabled(true);//android 返回键和菜单键支持 这个才是正确的

然后实现这两个函数就行了

1》监听返回键和菜单键

StartMenu.h

classStartMenu:public cocos2d::CCLayer
{
public:

virtualbool init();
virtualvoid keyBackClicked();//监听Android 返回键
virtualvoid keyMenuClicked();//监听Android 菜单键
};

StartMenu.cpp

boolStartMenu::init()
{
this->setKeypadEnabled(true);
...
}

voidStartMenu::keyBackClicked (){
...
}

voidStartMenu::keyMenukClicked (){
...
}

2》监听home键 AppDelegate.cpp类中的方法可以实现

void AppDelegate :: applicationDidEnterBackground () void AppDelegate :: applicationWillEnterForeground ()

如何在Cocos2dx中处理Android os的设备的Menu和Back案件的响应处理;

其实很简单,步骤如下:

1. 在需要响应的.h 中添加如下两个虚函数:

?
1 2 virtual void keyBackClicked(); //Android 返回键 virtual void keyMenuClicked(); //Android 菜单键

2. .cpp类中实现如上两个函数即可,如下,Himi这里测试使用,World是个Layer

?
1 2 3 4 5 6 7 void World::keyBackClicked(){ CCLog( "Android- KeyBackClicked!" ); } void World::keyMenuClicked(){ CCLog( "Android- keyMenuClicked!" ); }

3.初始化的时候记得开启:this->setIsKeypadEnabled(true);

更多相关文章

  1. Android:实现一种浮动选择菜单的效果
  2. Android下intent的setdata、settype和setdataandtype函数
  3. Android的底部菜单
  4. android中菜单以及自定义组件的使用

随机推荐

  1. Android实现控制第三方音乐播放器暂停/播
  2. Android中的String StringBuffer StringB
  3. 理解Android中的引用类型
  4. Android(安卓)Debug Bridge 用法简单归纳
  5. Android工程重新编译问题
  6. 如何用Qt/C++访问Android摄像头
  7. Android与JavaScript交互
  8. Android--Sensor传感器
  9. Eclipse中Android(安卓)SDK Manager无法
  10. Genymotion下载vbox提示connection timeo