一:介紹
大家在項(xiàng)目的啟動(dòng)界面,會(huì)停留3秒鐘然后進(jìn)入引導(dǎo)界面或者主界面,然而細(xì)心一看你會(huì)發(fā)現(xiàn)這個(gè)現(xiàn)象:一般啟動(dòng)界面全屏展示一張圖片,然而程序一啟動(dòng)先出現(xiàn)短暫的白屏或者黑屏,然后才出現(xiàn)展示圖片的界面,這樣用戶體驗(yàn)非常不好,下面來(lái)介紹一下原因和解決方法
二:黑白屏問(wèn)題的原因
activity生命周期先執(zhí)行onResume()方法,如果此方法中執(zhí)行了耗時(shí)操作,阻塞了主線程,很明顯就會(huì)出現(xiàn)黑白屏問(wèn)題.還有就是即使onResume()方法沒(méi)有執(zhí)行還是會(huì)出現(xiàn)黑白屏問(wèn)題,原因就是onCreate()中的下面這行代碼是個(gè)異步任務(wù),加載界面需要短暫的時(shí)間
setContentView(R.layout.activity_start);
三:解決黑白屏的方法
1.定義透明的主題,parent中的AppTheme為APP的主題即可
然后將該主題引用到application或啟動(dòng)頁(yè)中玩般,白屏問(wèn)題消失,但是activity的切換動(dòng)畫(huà)效果也變了礼饱,經(jīng)過(guò)查閱資料坏为,終于找到解決方法,修改如下:
AppBaseTheme為APP的主題镊绪,將AppTheme應(yīng)用到application匀伏,
問(wèn)題徹底解決。