zoukankan      html  css  js  c++  java
  • 横竖屏切换(转)

    横竖屏切换(转)

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

    要做到这个要求其实很简单,在AndroidManifest.xml里面配置一下就可以了。加入这一行 
    强制竖屏: 
    Java代码  收藏代码
    1. android:screenOrientation="landscape"  


    或者在代码中: 

    Java代码  收藏代码
    1. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);  


    强制横屏: 
    Java代码  收藏代码
    1. android:screenOrientation="portrait"  


    或者在代码中: 

    Java代码  收藏代码
    1. 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代码  收藏代码
    1. android:screenOrientation="landscape"  
    2. android:configChanges="orientation|keyboardHidden"  


    代码中设置: 
    Java代码  收藏代码
    1. requestWindowFeature(Window.FEATURE_NO_TITLE);  
    2. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);  


    2、设置为全屏模式: 
    Java代码  收藏代码
    1. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);  


    3、强制为横屏: 
    Java代码  收藏代码
    1. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);  


    4、强制为竖屏 
    Java代码  收藏代码
    1. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);  
  • 相关阅读:
    I.MX6 Surfaceflinger 机制
    理解 Android Fragment
    RPi 2B DDNS 动态域名
    RPi 2B IPC webcam server
    理解 Android MVP 开发模式
    I.MX6 system.img unpack repack
    can't set android permissions
    VMware Ubuntu 共享文件夹
    解决oracle数据库连接不上的问题
    perfect-scrollbar示例
  • 原文地址:https://www.cnblogs.com/wanqieddy/p/2375124.html
Copyright © 2011-2022 走看看