扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
在Android 开发中全屏显示的方式有三种,分别介绍如下:
成都创新互联公司是一家专业提供姚安企业网站建设,专注与成都网站制作、成都做网站、H5响应式网站、小程序制作等业务。10年已为姚安众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
1、在Activity中进行设置,代码如下:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
此行代码必须写在Activity指定布局文件之前,否则会报错误。
2、在android项目的主配置文件的application的属性中设置,设置方式一:
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
3、在android项目的主配置文件的application的属性中设置,设置方式二:
android:theme="@style/fullscreem"。
默认的DialogFragment并不是全屏,但有些需求需要我们将对话框设置为全屏(内容全屏),Android并没有提供直接的API,通过其它不同的方法设置全屏在不同的机型上总有一些诡异的问题,经过测试,下面的方法可以实现各个机型的全屏。
测试 SDK Version = 28
覆写Fragment的onStart()方法:
上面的方法可以成功设置Dialog为全屏,但是如果在全屏的Dialog顶部有View的情况下,在某些机型View会被状态栏遮住(比如三星S9),这时需要一些特殊的设置来处理,可以参考我的文章: 解决DialogFragment在全屏时View被状态栏遮住的问题
本文原始地址 ,如有更多疑问,请参考我的其它Android相关博客: 我的博客地址
在 setContentView(R.layout.activity_main);
之后调用
setFullscreen();
要设置Android应用全屏显示有两种方式,第一种是在AndroidManifest.xml文件中进行配置,另一种方式是在Activity中进行设置。此处仅描述第二种方式。
设置全屏显示有两步工作,首先要取消显示标题栏,然后在全屏显示。代码如下:1@Override2publicvoidonCreate(Bundle savedInstanceState) {3super
.onCreate(savedInstanceState);4//使屏幕不显示标题栏(必须要在setContentView方法执行前执行)5this
.requestWindowFeature(Window.FEATURE_NO_TITLE);6//隐藏状态栏,使内容全屏显示(必须要在setContentView方法执行前执行)7this
.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,8WindowManager.LayoutParams.FLAG_FULLSCREEN);9setContentView(R.layout.splash);10}强调,设置全屏显示时,这两行核心代码一定要在设置视图之前执行,即一定要位于setContentView()方法之前。
有时候app需要隐藏掉状态栏,让app全屏显示,在API 30以前写法都是使用的下方这种,网上也大多是这种:
但在API 30以后,这个写法用 WindowInsetsController 接口的 hide 方法替代了,具体如下:
在上方使用的是kotlin写法,如果是java可以用下方写法:
兼容API 30以前的写法:
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流