Android关于全屏的Activity设置

一般有两种的全屏方式一个是非沉浸式的全屏,一般通过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实现了代码的效果,其实一个意思。

你可能感兴趣的:(安卓开发,沉浸式,全屏Activity,自定义style)