沉浸式状态栏源代码

本人见网上有很多这种关于沉浸式的介绍这里我也不在纠结这个名字了,具体是叫沉浸式状态栏还是什么别的称呼没必要深究,主要是效果。以下是本人在网上学习沉浸式所整理出来的源代码,想要看不同状态的样式解除注释然后再把原来的注释掉就可以看到,希望对你们有用,不喜勿喷谢谢!!!

package com.atguigu.mihui.domo;

import android.os.Build;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

import com.atguigu.mihui.R;

public class Chenjinshi extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        //只是隐藏状态栏

//            super.onCreate(savedInstanceState);
//            setContentView(R.layout.activity_chenjinshi);
            获取当前界面的DecorView
//            View decorView = getWindow().getDecorView();
            SYSTEM_UI_FLAG_FULLSCREEN表示全屏,意思隐藏状态栏
//            int option = View.SYSTEM_UI_FLAG_FULLSCREEN;
            设置系统UI元素的可见性
//            decorView.setSystemUiVisibility(option);
//            ActionBar actionBar = getSupportActionBar();
            隐藏actionBar
//            actionBar.hide();
//    }


        //在全屏的状态下显示状态栏
//            super.onCreate(savedInstanceState);
//            setContentView(R.layout.activity_chenjinshi);
//            //这个效果只能在5.0以后才能实现 所以在下面判定版本5.0以后执行以下代码
//
//            if (Build.VERSION.SDK_INT >= 21) {
//                View decorView = getWindow().getDecorView();
//                int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
//                        | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
//                decorView.setSystemUiVisibility(option);
//                getWindow().setStatusBarColor(Color.TRANSPARENT);
//            }
//            ActionBar actionBar = getSupportActionBar();
//            actionBar.hide();


        //隐藏导航栏 和状态栏  不过这么写 会出现点击屏幕退出全屏的效果
//            super.onCreate(savedInstanceState);
//            setContentView(R.layout.activity_chenjinshi);
//            View decorView = getWindow().getDecorView();
//            int option = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
//                    | View.SYSTEM_UI_FLAG_FULLSCREEN;
//            decorView.setSystemUiVisibility(option);
//            ActionBar actionBar = getSupportActionBar();
//            actionBar.hide();

        //透明的状态栏 和导航栏
//            super.onCreate(savedInstanceState);
//            setContentView(R.layout.activity_chenjinshi);
//            if (Build.VERSION.SDK_INT >= 21) {
//                View decorView = getWindow().getDecorView();
//                int option = View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
//                        | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
//                        | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
//                decorView.setSystemUiVisibility(option);
//                getWindow().setNavigationBarColor(Color.TRANSPARENT);
//                getWindow().setStatusBarColor(Color.TRANSPARENT);
//            }
//            ActionBar actionBar = getSupportActionBar();
//            actionBar.hide();
//        }

//            真正的沉浸式模式  如果需要横屏可以在AndroidManifest里面添加以下代码
        /**
         * <activity android:name=".MainActivity"
         * android:screenOrientation="landscape">
         * </activity>
         */

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chenjinshi);


    }

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus && Build.VERSION.SDK_INT >= 19) {
            View decorView = getWindow().getDecorView();
            decorView.setSystemUiVisibility(
                    View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                            | View.SYSTEM_UI_FLAG_FULLSCREEN
                            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
        }
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值