Android back button does not work

放肆的年华 提交于 2019-12-03 04:42:14

It is been handled here in the file Cocos2dxGLSurfaceView.java

change it to below, where myActivity is the cocos2dActicity

        case KeyEvent.KEYCODE_BACK:
                    AlertDialog ad = new AlertDialog.Builder(myActivity)
                    .setTitle("EXIT?")
                    .setMessage("Do you really want to exit?")
                    .setPositiveButton("YES", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            ((Cocos2dxActivity)myActivity).finish();
                        }
                    })
                    .setNegativeButton("NO", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {

                        }
                    }).create();
                    ad.show();
            return true;
        case KeyEvent.KEYCODE_MENU:

To handle back button pressing you need to redefine onBackPressed() method of your activity, not this two methods.

Have you enabled the touch? If not then please enable it and Hope, it'll sort-out your problem.

I assume that's button in your game screen.

Just your apps implements for override method for onKeyDown,

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        // Here to implements for your code.
        Log.d(TAG, "KEYCODE_BACK");
    }
    return super.onKeyDown(keyCode, event);
}
Mike

Here's an update for Cocos2d-x version 3+

This has been answered simply (and works) here

as well as a slightly less complete youtube here

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!