簡體   English   中英

如何在不使其全屏的情況下刪除 flutter 啟動屏幕狀態欄的顏色覆蓋?

[英]How to remove flutter splash screen status bar's color overlay WITHOUT making it Fullscreen?

我想制作一個完美融合的閃屏,而不是全屏。 我的意思是我想制作一個背景顏色與狀態欄混合的啟動畫面。 我成功地以正確的方式制作了啟動屏幕(我的意思是通過編輯 android xml文件)並使狀態欄顏色與啟動屏幕的背景顏色相同,但有這種覆蓋灰色的顏色在狀態欄上顯示幾分之一秒的東西。 我什至無法在屏幕截圖中捕捉到它。 我嘗試了不同的方法。 statusBarColor設置為透明的SystemOverlay調用不起作用,它只會更改在初始屏幕之后呈現的應用程序主題的狀態欄顏色。 我已經為我的啟動主題嘗試了不同的parent屬性(如Theme.Holo.NoTitleBar和所有其他組),但問題仍然存在。 然后我嘗試使用styles.xml中的樣式item 這是我嘗試過的一堆項目(雖然不是一次全部)。

<item name="android:windowBackground">@drawable/launch_background</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:windowTranslucentStatus">false</item>
    <item name="android:windowActionBarOverlay">false</item>
    <item name="android:windowLightStatusBar">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:background">@android:color/transparent</item>
    <item name="android:windowDisablePreview">true</item>
    <item name="android:windowIsTranslucent">true</item>

如果您已成功刪除覆蓋物,請回答此問題。 請不要僅僅憑猜測或您自己沒有嘗試過的東西給我希望。 相信我,我一直在尋找這個,我只在他/她的主要問題的評論部分找到了一個有這個問題的人,但是這個人無法得到答案,所以我把它作為一個問題發布. 也許我錯過了,所以如果這個問題在其他地方得到回答,請提供鏈接。 先感謝您!

您是否嘗試過使狀態欄顏色透明?

在 styles.xml 中:

    <item name="android:navigationBarColor">@android:color/transparent</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>

在 MainActivity.kt 中:

override fun onCreate(savedInstanceState: Bundle?) {
    WindowCompat.setDecorFitsSystemWindows(window, false)
    super.onCreate(savedInstanceState)
}

它對我有用。

暫無
暫無

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

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