🔥 启动画面的工作原理
============
当用户启动应用而应用的进程未在运行(冷启动)或 Activity 尚未创建(温启动)时,会发生以下事件。(在热启动期间从不显示启动画面。)
-
系统使用主题以及您已定义的任何动画显示启动画面。
-
当应用准备就绪时,会关闭启动画面并显示应用。
关于应用启动模式可以参考:Android 性能优化之启动优化。
🔥 动画的元素和机制
===========
动画的元素由 Android 清单中的 XML 资源文件定义。每个元素都有浅色模式和深色模式版本。
它们由窗口背景、动画形式的应用图标和图标背景组成:
关于这些元素,请注意以下几点:
-
应用图标 (1) 应该是矢量可绘制对象,它可以是静态或动画形式。不超过 1000 毫秒。默认情况下,使用启动图标。
-
图标背景 (2) 是可选的,在图标与窗口背景之间需要更高的对比度时很有用。如果您使用一个自适应图标,当该图标与窗口背景之间的对比度足够高时,就会显示其背景。
-
与自适应图标一样,前景的三分之一被屏蔽(3)。
-
窗口背景 (4) 由不透明的单色组成。如果窗口背景已设置且为纯色,则未设置相应的属性时默认使用该背景。
启动画面动画机制由进入动画和退出动画组成。
-
进入动画由系统视图到启动画面组成。这由系统控制且不可自定义。
-
退出动画由隐藏启动画面的动画运行组成,可以对其自定义。如果你要对其进行自定义,你将可以访问 SplashScreenView 及其图标,并且可以在它们之上运行任何动画(需要设置转换、不透明度和颜色)。在这种情况下,当动画完成时,需要手动移除启动画面。
🔥 自定义应用中的启动画面
==============
💥 设置主题属性以更改其外观
🌀 设置启动画面背景颜色
设置了淡紫色的背景图。