Compose Material 1.7.0中RippleTheme已弃用,如何使用RippleConfiguration?
使用RippleConfiguration替代弃用的RippleTheme(Compose Material 1.7.0+)
核心变化
原RippleTheme通过自定义主题实现涟漪效果的全局/局部配置,而RippleConfiguration是更轻量化的配置类,支持直接在组件上设置,也可结合全局主题统一配置。
具体使用方式
1. 单个组件自定义涟漪
对于Button、Card等自带交互效果的组件,可通过ripple参数直接传入RippleConfiguration实例:
Button( onClick = { /* 点击逻辑 */ }, ripple = RippleConfiguration( color = Color(0x40FF0000), // 带透明度的自定义涟漪色 bounded = false, // 允许涟漪超出组件边界 radius = 32.dp // 自定义涟漪扩散半径 ) ) { Text("自定义涟漪按钮") }
2. 全局统一配置涟漪效果
在MaterialTheme中设置rippleConfiguration,可让应用内所有组件默认使用该配置:
MaterialTheme( colors = lightColors(), typography = Typography(), shapes = Shapes(), rippleConfiguration = RippleConfiguration( color = Color(0x33666666), radius = 20.dp ) ) { // 应用内所有组件默认使用上述涟漪配置 AppContent() }
3. 局部覆盖全局配置
若某组件需要单独的涟漪效果,直接在组件上设置ripple参数即可,优先级高于全局主题配置。
关键参数说明
color:涟漪的显示颜色,建议使用带透明度的颜色以保证视觉协调性bounded:控制涟漪是否被限制在组件边界内,false时涟漪会向外扩散超出组件范围radius:涟漪扩散的最大半径,可根据组件尺寸调整适配
内容的提问来源于stack exchange,提问作者Mohammad Mohammadi
相关产品推荐
相关产品推荐

