用途:在 Jetpack Compose 中应用 Material 3 Expressive 设计模式,构建更具情感表达力、基于物理动效的动态 Android UI。
主要能力:提供 MaterialExpressiveTheme 主题入口,统一配置颜色、动效、形状与字体;基于弹簧物理的 MotionScheme 动效令牌(fast/default/slow 的 effects 与 spatial 两类);形状变形与共享元素过渡、预测性返回手势、关键帧动画;35 个新增形状令牌(含 increased 变体与 full 胶囊形);强调字体样式(如 displayLargeEmphasized、headlineLargeEmphasized);以及 28 个新增或增强组件。
使用方式:在 app 模块 build.gradle.kts 中引入 compose-bom 2025.05.00 及以上、material3、material3-adaptive-navigation-suite、animation、foundation,并开启 compose 构建特性。用 MaterialExpressiveTheme 替代 MaterialTheme,传入 colorScheme、motionScheme = MotionScheme.expressive()、shapes 与 typography。通过 MaterialTheme.motionScheme 获取动效令牌,配合 animateFloatAsState 等使用。
限制:所有 M3 Expressive API 均为实验性,每个 composable、主题函数与动效令牌都需 @OptIn(ExperimentalMaterial3ExpressiveApi::class);需 Material 3 1.4.0-alpha+ 或 BOM 2025.05+。资料未提供具体组件清单、收费信息与完整使用步骤。