Android - 擺脫開啟第一個activity前的空白畫面

打開APP進入第一個activity前,會有一空白頁面(可能是白底或黑底)。且這個頁面並非自己的程式造成的,擺脫不了

解決方法

  • 主要參考:這一篇
  • 成因:
    • 這一個頁面稱preview window
    • android系統在開啟我們的app時,有一些前置作業要處理:載入class、資源檔等,需要花一些時間
    • android系統為了讓用戶不會感覺被卡住,或是點選後沒有馬上反應,因而有這個preview window
    • 此preview window的配置會依照app的theme設置而有不同長相(在androidmanifest.xml內,application的屬性android:theme(若沒設置表是用系統預設))
  • 擺脫方法:
    • 方法一: 較不推薦 直接把prewview window關掉
      • 不推薦,因為這樣做就失去了這個設計的目的-讓用戶感覺開啟app的過程是流暢的,起碼一點開是有反應的。
      • 作法:
        • 在styles.xml內找到你目前設置theme的style
      • 加入true
    • 方法二: 把preview window改成與app較一致不突兀的風格
      • 在styles.xml內找到你目前設置theme的style,並繼承原本的theme新增自己的配置。EX:
        <style name="MY_NEW_THEME" parent="@android:style/YOUR_ORIG_THEME">
        <item name="android:windowBackground">@android:color/black</item>
        </style>
        
      • 在androidmanifest.xml內將theme改為MY_NEW_THEME

文章來自於這