Android中禁用屏幕旋转

来源:互联网 发布:dos运行java 编辑:程序博客网 时间:2024/04/26 23:49

在Android中,如果屏幕发生了旋转(横向、纵向切换),那么会非常悲剧。会销毁当前的Activity,然后重新创建一个新屏幕方向的Activity。由于游戏中的参数很密集,而且一般不会考虑两种屏幕的情况,所以需要禁用屏幕旋转功能(和iPhone中大多数游戏类似)。

    首先要禁用旋转,在AndroidManifest.xml中找到当前游戏主窗体的Activity配置文件,添加以下代码:

android:screenOrientation="landscape"

    这里的landscape是横向的意思,其他选项用Eclipse的代码提示可以看到。现在运行游戏后,无论屏幕怎么切换,始终是横向的了。但是依然很悲剧,旋转屏幕后会重新创建Activity。还需要在Activity配置文件中添加以下代码:

android:configChanges="orientation|keyboardHidden"

    添加了上面的代码后,再也不会重复的创建Activity了。如果需要捕获屏幕旋转的事件,只需要在Activity的代码中覆写onConfigurationChanged方法即可:

@Override public void onConfigurationChanged(Configuration newConfig) {super.onConfigurationChanged(newConfig); // do something }

    OK,到此,再也不用担心屏幕旋转的问题了。

0 0
原创粉丝点击