android设置全屏以及解决设置全屏无效的方法

介绍两种设置全屏的方法:

1. 清单文件中配置:

android设置全屏以及解决设置全屏无效的方法_第1张图片

表示去掉标题栏
android:theme="@android:style/Theme.Black.NoTitleBar"

不仅标题栏可以去掉, 状态栏也可以去掉
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"

为整个应用配置全屏显示
"@android:style/Theme.NoTitleBar.Fullscreen"  />

2.代码中配置

这种方法有个弊端,就是在设置全屏的这个activity刚出现时,title会闪现一下再消失,也就是需要执行到设置全屏的代码的时候才会完全有效。所以建议使用第一种做法!

android设置全屏以及解决设置全屏无效的方法_第2张图片

在onCreate方法中的setContentView调用前添加
requestWindowFeature(Window.FEATURE_NO_TITLE);// 去标题栏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);// 去掉Activity上面的状态栏

注意: 设置全屏的代码方法 需要在 setContentView() 之前调用.

##可能有人发现继承AppCompatActivity后用上面的两种方法设置, 第一种会报错、第二种不会生效。
报错如下:

java.lang.RuntimeException: Unable to start activity ComponentInfo{***你的包名***.MainActivity}: 
java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

是的上面的两种方法是继承Activity时设置全屏的方法,而继承AppCompatActivity的解决方法是用主题的形式设置全屏。方法如下:

定义一个style , 在清单文件中引用这个style

    

清单文件

android设置全屏以及解决设置全屏无效的方法_第3张图片

你可能感兴趣的:(ADT)