簡體   English   中英

在 Android 11+ 上使狀態欄完全透明

[英]Making status bar fully transparent on Android 11+

我想讓應用程序狀態欄完全透明。 我使用WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS

它正在按照我的意願制作 statusBar。 但它也使導航欄位於我的內容之上。 我用了很多方法讓導航欄不變化都失敗了。 網上有很多答案,但沒有一個有效。 如何制作一個沒有黑色陰影且沒有navigationBar變化的全透明statusBar?

提出這個問題並沒有得到任何人的幫助。 但是幾個月后,在制作另一個應用程序時,我得到了這個問題的答案,並且它只適用於我的應用程序。

getSupportActionBar().hide();


    if (Build.VERSION.SDK_INT >= 21) {
        Window window = getWindow();
        window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
        window.setStatusBarColor(Color.TRANSPARENT);
    } else if (Build.VERSION.SDK_INT >= 19) {
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        //Virtual keyboard is also transparent
        //getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
    }

我希望這段代碼能正常工作!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM