抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

引言

谷歌在Android 12添加了SplashScreen API,它可为所有应用启用新的应用启动动画。这包括启动时的进入应用运动、显示应用图标的启动画面,以及向应用本身的过渡。

启动画面的工作原理

当用户启动应用而应用的进程未运行冷启动或 Activity 尚未创建温启动时,会发生以下事件。(在热启动期间从不显示启动画面。)

系统使用主题以及您已定义的任何动画显示启动画面。

当应用准备就绪时,会关闭启动画面并显示应用。

splash

实现

为了在安卓12以下的手机体验一致,需要使用Androidx SplashScreen compat库进行向下兼容

1
implementation 'androidx.core:core-splashscreen:1.0.0-beta01'

创建一个父级为Theme.SplashScreen的主题,并将postSplashScreenTheme的值设为Activity应使用的主题,同时将windowSplashScreenAnimatedIcon设为可绘制对象或带动画的可绘制对象。其他属性可视需要进行设置。

1
2
3
4
5
6
<style name="Theme.App.Starting" parent="Theme.SplashScreen">
<item name="windowSplashScreenBackground">@color/white</item>
<item name="windowSplashScreenAnimatedIcon">@drawable/splash_anim</item>
<item name="windowSplashScreenAnimationDuration">200</item>
<item name="postSplashScreenTheme">@style/AppTheme</item>
</style>

评论