写点什么

Android Activity 启动出现白屏带标题或闪屏问题解决,移动开发者社区

用户头像
Android架构
关注
发布于: 1 小时前

}


第一种处理方式:



设置 Theme 窗口背景 windowBackground,通过以 Splash 的形式出现,作为启动图片


<style name="styleSplashImage" parent="Theme.AppCompat.Light.NoActionBar">


<item name="android:windowBackground">@drawable/splash_bg</item>


<item name="android:windowNoTitle">true</item>


<item name="android:windowNoTitle">false</item>


</style>


注意:如果在 Activity 里做的操作处理任务比较多,可能还是会出现白屏或者闪屏现象


第二种处理方式:



在第一种的基础上定义一个 SplashActivity 过渡加载跳转到主界面 Activity


<style name="AppTheme.NoActionBar.FullScreen">


<item name="android:windowFullscreen">true</item>


<item name="android:windowBackground">@mipmap/splash_bg</item>


</style>


public class SplashActivity extends AppCompatActivity {


@Override


protected void onCreate(@Nullable Bundle savedInstanceState) {


super.onCreate(savedInstanceState);


// setContentView(R.layout.activity_splash)


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


;


new Handler().postDelayed(new Runnable() {


@Override


public void run() {


startActivity(new Intent(SplashActivity.this, MainActivity.class));


finish();


}


}, 1500);


}


}


第三种处理方式:



通过设置 Theme android:windowIsTranslucent 属性设置为 true,背景透明属性


<style name="styleSplashImage" parent="Theme.AppCompat.Light.NoActionBar">


<item name="android:windowIsTranslucent">true</item>


<item name="android:windowNoTitle">true</item>


</style>


注意:这样设置出现问题,跳转或切换页面的动画效果失效了


解决:自己定义一个窗口动画样式 android:windowAnimationStyle


<style name="FamilyNumberThemeNew" parent="Theme.AppCompat.Light.NoActionBar">


<item name="colorPrimary">@color/colorPrimary</item>


<item name="colorPrimaryDark">@color/colorPrimaryDarks</item>


<item name="colorAccent">@color/colorAccent</item>


<item name="android:windowActionBar">false</item>


<item name="android:windowTitleBackgroundStyle">@color/titleBarBackground</item>


<item name="android:windowTitleSize">50dip</item>


<item name="android:textSize">18sp</item>


<item name="android:windowFullscreen">true</item>


<item name="android:windowContentOverlay">@null</item>-->


<item name="android:windowIsTranslucent">true</item>


<item name="android:windowNoTitle">true</item>


<item name="android:windowAnimationStyle">@style/ActivityAnimaStyle</item>


</style>


<style name="ActivityAnimaStyle" parent="@android:style/Animation.Activity">


<item name="android:activityOpenEnterAnimation">@anim/anim_fade_in</item>


<item name="android:activityOpenExitAnimation">@anim/anim_fade_out</item>


<item name="android:activityCloseEnterAnimation">@anim/anim_fade_in</item>


<item name="android:activityCloseExitAnimation">@anim/anim_fade_out</item>


<item name="android:taskOpenEnterAnimation">@anim/anim_fade_in</item>


<item name="android:taskOpenExitAnimation">@anim/anim_fade_out</item>

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
Android Activity 启动出现白屏带标题或闪屏问题解决,移动开发者社区