之前发过一篇《如何在Cocos2d-x 3.0rc0中让程序背景透明》,但是由于3.0rc0后Cocos2d-x更改为Java Activity,而不再是Native Activity,使得这种方法失效。
这里以最新的Cocos2d-x 3.2 release为例,介绍如何在Cocos2d-x中让程序背景透明。
一样,先上图。
修改的东西不多。主要有3步。
1.在AndroidManifest.xml中设置Activity背景透明
1 | android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" |
如图,
2.在libcocos2dx项目的org.cocos2dx.lib项目中的Cocos2dxActivity.java文件中,修改init()方法。
增加如下代码:
1 | this.mGLSurfaceView.setZOrderOnTop(true); |
如图,
3.在libcocos2dx项目的org.cocos2dx.lib项目中的Cocos2dxRenderer.java文件中,修改onSurfaceCreated()方法。
增加如下代码:
1 | pGL10.glDisable(GL10.GL_DITHER); |
如图,
好了,如果有更好的办法欢迎提出。
本工程的下载地址: