您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Android啟動APP時黑屏白屏怎么辦,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
在開發中,我們在啟動app的時候,屏幕會出現一段時間的白屏或者黑屏,不同設備時間長短不同。很影響用戶體驗。
首先分析一下,產生這個現象的原因,當我們在啟動一個應用時,系統會去檢查是否已經存在這樣一個進程,如果不存在,就是冷啟動。系統和APP本身都有很多工作需要處理。首先系統的服務會先檢查startActivity中的intent的信息,然后在去創建進程,最后才是執行啟動Acitivy的操作。而我們上面提到的顯示白黑屏的問題,就是在這段時間內產生的。
系統在繪制頁面加載布局之前,首先會初始化窗口(Window),而在進行這一步操作時,系統會根據我們設置的Theme來指定它的Theme 主題顏色,Window 布局的頂層時DecorView,StartingWindow顯示一個空DecorView,我們在Style中的設置就決定了顯示的是白屏還是黑屏。
最簡單的解決方法
既然黑白屏是根據我們設置的Theme來決定的,那我們就可以直接從啟動頁的Theme入手,解決這個問題。
第一步:在style文件中定義如下
<!--***************啟動頁Theme***************--> <style name="Theme.Splash" parent="Theme.AppCompat.Light.NoActionBar"> <item name="windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowBackground">@drawable/splash_pic</item> <item name="android:windowFullscreen">true</item> </style>
第二步:在AndroidManifest中設置啟動頁Theme
<activity android:name=".ui.SplashActivity" android:theme="@style/Theme.Splash" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
如上,我們給啟動頁設置一個全屏的背景圖片,這樣就不用顯示默認的主題顏色了。
按照以上配置,這樣就能避免白屏或者黑屏問題了。
關于“Android啟動APP時黑屏白屏怎么辦”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。