天天看點

android進出動畫有白屏,Android啟動白屏原因及解決方案

如果大家碰到了這個問題,相信剛開始大家都是很委屈的吧,心裡想:我什麼都沒幹啊,就寫了個setContentView就要背鍋了?如果已經遇到了,不要方,這裡給大家提供幾個解決方案,我們APP在啟動的時候會出現1~2秒的白屏或者黑屏,這個所謂的白屏或黑屏其實與我們設定的Theme有關,如果是Light就是白色,如果是Black則可能出現黑屏,那麼為什麼會有這種情況出現呢?接下來給大家分析一波。

android進出動畫有白屏,Android啟動白屏原因及解決方案

jdfw.gif

App啟動時白屏或黑屏的原因

當你打開一個App時其實就是打開了一個activity,如果這個Activity所屬的應用還沒有在運作,那麼系統會為這個Activity所屬的應用建立一個程序,建立程序是需要時間的,進而導緻了白屏或黑屏的出現。

白屏或黑屏的解決

解決方案其實很多,接下來給大家介紹幾種

第一種解決方案

打開Manifest檔案,找到啟動的Activity,找到對應的主題,進入style.xml檔案,設定android:windowBackground屬性為你啟動頁的圖檔即可,如果想體驗更好,也可以加入windowNoTitle屬性為true隐藏ActionBar,再加入android:windowFullscreen屬性為true全屏顯示,進而達到秒啟動的效果

@drawable/splash

true

true

android進出動畫有白屏,Android啟動白屏原因及解決方案

圖檔被拉伸的有點厲害,不過白屏看不到了不是麼

第二種解決方案

第一種方案是加入一張圖檔進而造成一種快速啟動的錯覺,不過呢,可能會有一種小問題,那就是圖檔會移動一下,強迫症表示忍受不了,上第二種方案,直接給你的activity設定android:windowBackground屬性為透明色,這樣就可以避免圖檔拉伸的問題,小二,上效果。

@color/trans

true

true

android進出動畫有白屏,Android啟動白屏原因及解決方案

這樣是可以達到秒啟動的

這樣呢有一個小小的缺點,就是啟動App的時候,由于界面是透明的,是以可能會導緻使用者以為自己沒有點到App,這兩種方式大家根據自己的需求來。

以上純屬于個人平時工作和學習的一些總結分享,如果有什麼錯誤歡迎随時指出,大家可以讨論一起進步。