一般有两种的全屏方式一个是非沉浸式的全屏,一般通过AndroidManifest功能清单文件配置theme为NoActionBar即可,还有一种是沉浸式的全屏,顶部全部填充,以下就是这种方式的两种实现形式(代码实现和style文件静态配置实现)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
}
这种方式是比较常见的,其实也可以通过style文件中添加样式属性来实现,是等价的
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="FullScreenTheme" parent="AppTheme">
<item name="android:windowFullscreen">true</item>
<item name="windowNoTitle">true</item>
</style>
</resources>
其中的FullScreen就是添加的自定义样式,其继承了AppTheme后通过两行的item实现了代码的效果,其实一个意思。