参考自Android强制设置横屏或竖屏。

设置横屏或竖屏:
方法一:
在xml中添加android:screenOrientation属性(portrait是纵向,landscape是横向)

android:screenOrientation="portrait"
"unspecified"   默认值 由系统来判断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示方向."landscape" 横屏显示(宽比高要长)"portrait"  竖屏显示(高比宽要长)"user"  用户当前首选的方向"behind"    和该Activity下面的那个Activity的方向一致(在Activity堆栈中的)"sensor"    有物理的感应器来决定。如果用户旋转设备这屏幕会横竖屏切换。"nosensor"  忽略物理感应器,这样就不会随着用户旋转设备而更改了 ( "unspecified"设置除外 )。

方法二:
重写Activity的onResume方法

@Overrideprotected void onResume() { /**  * 设置为横屏  */ if(getRequestedOrientation()!=ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE){  setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); } super.onResume();}

设置全屏(缩进隐藏状态栏,同时用才有效果):

requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题栏 在setContentView之前用.setContentView(R.layout.activity_main);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置全屏

缩进隐藏状态栏

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

透明状态栏

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

透明导航栏

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);

注意:部分手机底部有虚拟按键,如果想达到沉浸状态栏的效果,可以将状态栏设置透明,底部导航栏不设置,这样就不会和虚拟按键冲突。
更多点这里 Android动态显示和隐藏状态栏
Android App 隐藏标题栏+状态栏+导航栏

更多相关文章

  1. Android开发方向
  2. 安装busybox到Android设备
  3. Android设备连接Unity Profiler性能分析器
  4. [Android] ubuntu 下不识别 Android 设备
  5. Android系统移植与调试之------->如何修改Android设备存储盘符名
  6. [转载] 解决AndroidStudio连不上Android设备真机的问题
  7. [置顶] Android系统移植与调试之------->如何修改Android设备存
  8. Android 自适应屏幕方向和大小
  9. Android6.0修改设备设置中kernel信息

随机推荐

  1. 详细聊聊MySQL中慢SQL优化的方向
  2. MySQL8.0的WITH查询详情
  3. Prometheus 监控MySQL使用grafana展示
  4. MySQL命令无法输入中文问题的解决方式
  5. 当面试官问mysql中char与varchar的区别
  6. mysql 索引合并的使用
  7. 一文带你了解Mysql主从同步原理
  8. 基于Redo Log和Undo Log的MySQL崩溃恢复
  9. MySQL 到底是如何做到多版本并发的
  10. MySQL 外键(FOREIGN KEY)用法案例详解