cocos2dx android back键关闭游戏的方法
来源:互联网 发布:windows清理助手3 编辑:程序博客网 时间:2024/04/29 11:14
第一种方法:直接继承android系统函数,调用之后杀死游戏进程。
修改src目录下,工程文件.java文件
修改之前:
public class eoeFlappyBird extends Cocos2dxActivity{ protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);} public Cocos2dxGLSurfaceView onCreateView() { Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this); // eoeFlappyBird should create stencil buffer glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8); return glSurfaceView; } static { System.loadLibrary("cocos2dcpp"); } }
public class eoeFlappyBird extends Cocos2dxActivity{ protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);} public Cocos2dxGLSurfaceView onCreateView() { Cocos2dxGLSurfaceView glSurfaceView = new backgame(this); //此处修改 // eoeFlappyBird should create stencil buffer glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8); return glSurfaceView; } //此处修改 public Cocos2dxGLSurfaceView onCreateGLSurfaceView() {return new backgame(this);} static { System.loadLibrary("cocos2dcpp"); } }//添加继承类class backgame extends Cocos2dxGLSurfaceView {public backgame(Context context) {super(context);}public boolean onKeyDown(int keyCode, KeyEvent event) {// exit program when key back is enteredif (keyCode == KeyEvent.KEYCODE_BACK) {new AlertDialog.Builder(getContext()).setTitle(R.string.app_title) //R.string.app_title 是在 res目录中 string.xml配置的 <string name="app_title">提示</string> 不能重名.setMessage(R.string.quitContext).setPositiveButton(R.string.yes,new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog,int which) {android.os.Process.killProcess(android.os.Process.myPid());}}).setNegativeButton(R.string.no, null).show();}return super.onKeyDown(keyCode, event);}}
第二种方法:
1. 在需要响应的.h 中添加如下两个虚函数:virtual void keyBackClicked();//Android 返回键virtual void keyMenuClicked();//Android 菜单键2. .cpp类中实现如上两个函数即可,如下,void HelloWorld::keyBackClicked(){CCLOG("back btn is clicked");CCMessageBox("backbtn", "backbtn");CCDirector::sharedDirector()->end();}void HelloWorld::keyMenuClicked(){CCLOG("menu btn is clicked");CCMessageBox("menubtn", "menubtn");} 3.初始化的时候记得开启: this->setKeypadEnabled(true);
0 0
- cocos2dx android back键关闭游戏的方法
- 【iOS-cocos2d-X 游戏开发之十五】Cocos2dx中响应Android的Back(返回)与Menu(小房子)事件&&Cocos2dx自动释放粒子内存函数!
- Android 屏蔽BACK键和HOME键的方法
- android屏蔽Back键和Menu键的方法
- android按back键彻底退出应用程序的方法
- 关于Cocos2dx的游戏暂停方法
- 【Android】按Back键彻底关闭一个应用程序
- Android游戏开发之BACK键切回上一View时的处理
- PopupWindow响应Back键关闭
- 如何按back键 彻底的关闭一个应用程序
- android手机游戏入门之back键使用
- Android开发:如何按back键 彻底的关闭一个应用程序(调用finish()不太奏效)
- Android开发:如何按back键 彻底的关闭一个应用程序(调用finish()不太奏效)
- 【小知识点总结】android:windowSoftInputMode属性详解 和 按back键直接退出Activity,不关闭软键盘的问题
- (转)Cocos2dx中响应Android的Back(返回)与Menu(小房子)事件 && Cocos2dx自动释放粒子内存函数
- Android popupWindow响应back按键并关闭
- Android popupWindow响应back按键并关闭
- Android popupWindow响应back按键并关闭
- GNU ARM汇编--(二)汇编编译链接与运行
- uva 620 Cellular Structure
- Cocos2d-x多场景切换生命周期
- 杭电1375 字数统计
- c#正则表达式
- cocos2dx android back键关闭游戏的方法
- 1248 - Every derived table must have its own alias (MYSQL错误)
- GNU ARM汇编--(三)ARM处理器的基本原则
- GNU ARM汇编--(四)中断汇编之非嵌套中断处理
- 编程中无穷大常量的设定技巧
- GNU ARM汇编--(五)中断汇编之嵌套中断处理
- effective c++ -- 模板与泛型编程
- POJ - 1003 Hangover
- java容器之HashTable和HashMap之间的区别和联系