在开发游戏的时候,有些游戏是只能横屏玩的,所以手机竖立放置的时候,
要保持游戏画面依然横屏。要做到这个要求其实很简单,
在AndroidManifest.xml里面配置一下就可以了。加入这一行android:screenOrientation="landscape"。
例如(landscape是横向,portrait是纵向):
Java代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ray.linkit"
android:versi
android:versi>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Main"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".GamePlay"
android:screenOrientation="portrait"></activity>
<activity android:name=".OptionView"
android:screenOrientation="portrait"></activity>
</application>
<uses-sdk android:minSdkVersion="3" />
</manifest>
1.另外,android中每次屏幕的切换动会重启Activity,所以应该在Activity销毁前保存当前活动的状态,
在Activity再次Create的时候载入配置,那样,进行中的游戏就不会自动重启了!
2.也可以给每个activity加上android:c属性,就不会重启activity.而是去调用onConfigurationChanged(Configuration newConfig). 这样就可以在这个方法里调整显示方式.
比如
Java代码
if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
//横向
setContentView(R.layout.file_list_landscape);
}else{
//竖向
setContentView(R.layout.file_list);
}
在做android或者Ophone开发时,在默认情况下当屏幕从竖评变到横屏时会触发 onConfigurationChanged 事件 在默认情况下会重新加载画面并显示和横评一样的画面,这样会有2个问题,
- 布局问题,在竖屏 显示的布局 到横屏中由于宽和高发生了变化所有多少都会影响到布局(除非你定制2套画面在然后加个判断在横屏时怎么显示,在竖屏时怎么显示),当然最简单的办法就是在项目的 AndroidManifest.xml中找到你所指定的activity 中加上
- 只竖屏显示的话(android:screenOrientation="portrait")
- 只横屏显示的话(android:screenOrientation="landscape")
- 画面重新载入问题:在默认情况下横竖切换时会重新载入画面,导致一些不必要的资源浪费,更严重的是画面上保持的数据(特别是游戏方面)也都被重置了(当然你可以在重置前保存这些数据到数据库或者到文本文件中),要怎么避免在横竖切换时重新载入画面,
- 首先要在 AndroidManifest.xml中找到你所指定的activity 中加上android:configChanges="orientation|keyboardHidden"
- 然后 在activity的逻辑处理中(代码部分)去重载onConfigurationChanged事件,具体代码参考一下:
- @Override
public void onConfigurationChanged(Configuration config) {
super.onConfigurationChanged(config);
}
以上就可以简单的控制你的app画面的显示方式并且在显示方式不变的情况下横竖屏切换时不会重新加载画面,即优化的你的app同时用户体验也相应提高了。
以上,希望对大家有帮助。呵呵。
分享到:
相关推荐
解决了Android手机屏幕横竖屏切换的问题
部分网友会发现Activity在切换到后台或布局从横屏LANDSCAPE切换到PORTRAIT,会重新切换Activity会触发一次onCreate方法,使用其他的方法同样可以实现
主要介绍了android 屏幕横竖切换详解的相关资料,需要的朋友可以参考下
主要为大家详细介绍了Android横竖屏切换数据丢失问题的解决方法,感兴趣的小伙伴们可以参考一下
Android解决多个Fragment切换时布局重新实例化问题,并保存当前fragment页面,系统回收后还原之前fragment页面,内附源码及apk,博客:http://blog.csdn.net/fan7983377/article/details/51889269
当屏幕转动切换的时候 Android 机制是:销毁当前屏幕的 Activity ,然后重新开启一个新的适应屏幕改变的 Activity 。那么,我们该如何在屏幕切换的时候页面信息不被重置呢? 解决实现:1.在 AnroidMainifest.xml 的 ...
Gallery的Item使用的是一个ImageView+TextView,并且为其设置了selector,当使用setSelection设置时、横竖屏切换时Item的状态不会改变,这个目前在2.2/2.3系统中存在,高版本如4.0是不存在的。 正文 一、第一步...
(2) 三星的camera强制切换到横屏 导致Activity重启生命周期 (但是部分机型 配置 android:configChanges 也不能阻止横竖屏切换); 我的解决方法为 如果 activity 的销毁如果无法避免 那么在activity销毁之前调用 ...
android实现屏幕监控 1、问题 1、性能问题还未解决 2、需要手机拥有ROOT权限。... 2、屏幕横竖屏切换电脑屏幕同步切换 3、电脑屏幕全屏显示,按android屏幕显示,固定大小显示(代码中修改常量值)
android横竖屏总结.doc Android 的手势拖动切换ViewViewFlipper.doc Eclipse内存不足的解决办法.doc EditView 阻止软键盘自动弹出.doc HttpClient的一个应用的例子(图片下载).txt RatingBar 更换图片.doc ...
android横竖屏总结.doc Android 的手势拖动切换ViewViewFlipper.doc Eclipse内存不足的解决办法.doc EditView 阻止软键盘自动弹出.doc HttpClient的一个应用的例子(图片下载).txt RatingBar 更换图片.doc TextView...
学Android碎片(Fragment)时,创建好平板模拟器了,简单的...搜索博客找解决方案,上面全都说的是Ctrl + F11能转换成横屏,我在我的笔记本电脑上按了Ctrl + Fn + F11亲测无效。看了参考博文的发表时间——5年前或更早
主要介绍了Android webview旋转屏幕导致页面重新加载问题解决办法的相关资料,希望通过本文能帮助到大家实现这样的问题,需要的朋友可以参考下
前言 在日常开发中的时候,我们经常会使用ViewPager+Fragment进行视图滑动,在某些部分逻辑也许我们需要利用上下文Context(例如基本的Toast),但是由于Fragment只是依附在Activity容器... (三)横竖屏幕切换的时候
Android横竖屏要解决的问题应该就两个:一。布局问题;二。重新载入问题。1.布局问题:如果不想让软件在横竖屏之间切换,最简单的办法就是在项目的 AndroidManifest.xml中找到你所指定的activity中加上android:...