在开发游戏的时候,有些游戏是只能横屏玩的,所以手机竖立放置的时候,要保持游戏画面依然横屏。游戏开发之初最好就确定是用横屏还是竖屏,如果容忍转屏的话,不仅需要作两种界面布局,而且横竖屏切换很可能会内存溢出,导致程序崩溃。(文/jackliao)

要做到这个要求其实很简单,在AndroidManifest.xml里面配置一下就可以了。加入这一行
强制竖屏:

Java代码



 

android:screenOrientation="landscape"


 

android:screenOrientation="landscape"




或者在代码中:



Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

强制横屏:


Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



android:screenOrientation="portrait"


android:screenOrientation="portrait"



或者在代码中:



Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显


setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);





摘二:

xml文件中设置:


  要实现这个目的,只需要在AndroidManifest.xml里声明Activity的时候加上一个属性:android:screenOrientation,属性取值landscape为固定横屏、portrait为固定纵屏幕。


  代码:


  setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE););//强制为横屏


  setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏


  ============延伸========


  屏幕会自动切换时,默认状态的应用程序,会重新调用onCreate,相当于重新启动了一次应用程序。同时,layout可能因为横屏带来不能合理适配的问题。为了解决旋屏和键盘切换引起的程序重启问题,还需要增加一个属性:android:configChanges。这个属性可以理解为一个监听器,它将拦截旋屏和键盘切换事件,阻止程序重启而变为回调onConfigurationChanged方法。这里常用的属性取值为:keyboardHidden|orientation。



摘三:

Android 设置横屏模式显示,横屏模式大部分情况能弥补竖屏的不足——字体小、键盘小、画幅比例不合适,而且横屏模式下能提供更华丽、更流畅的感官体验,android 横屏,android landscape mode ,android 强制横屏,android 强制竖屏,android 横屏布局,android 设置全屏模式,android 横屏切换,android 设置横屏。


有些游戏只能横屏,所以手机竖立放置的时候,要保持游戏画面依然横屏,对于屏幕界面布局,在游戏开发之初最好先确定是用横屏还是竖屏,如果容忍转屏的话,不仅需要作两种界面布局,而且横竖屏切换很可能会内存溢出,导致程序崩溃。


Android 设置横屏布局


1、AndroidManifest.xml 设置属性:


Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



  1. android:screenOrientation="landscape"
  2. android:configChanges="orientation|keyboardHidden"


android:screenOrientation="landscape"
android:configChanges="orientation|keyboardHidden"




代码中设置:


Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



  1. requestWindowFeature(Window.FEATURE_NO_TITLE); 
  2. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 


requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);




2、设置为全屏模式:


Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



  1. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 


getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);




3、强制为横屏:


Java代码

Android如何设置横屏竖显_Android如何设置横屏竖显



1. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);