activity 跳转:
场景:在启动页,启动splashActivity界面(无setContentView)的时候,如果直接在onCreate里进行页面跳转逻辑(延迟不高),则会造成黑屏0.5s左右。并且splashActivity只执行onCreate和onDestroy。
splashActivity主题:
<style name="SplashTheme" parent="AppTheme">
// 背景图片logo
<item name="android:windowBackground">@drawable/layout_list</item>
<item name="android:windowFullscreen">true</item>
<!-- <item name="android:windowIsTranslucent">true</item> --> <!-- 透明背景不要了 -->
</style>
可能导致跳转时候短暂黑屏一段时间。
可以通过
getWindow().getDecorView().findViewById(android.R.id.content).post(this::turnActivity);
黑屏的原因是,window层还没有绘制完成,就进行了跳转。当window层绘制完成,就可以执行post。利用这个原理可以解决。