- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何更改 IconButton 的波纹颜色?
我试过这样做,但它没有改变:
IconButton(
onClick = { onClick() },
modifier = Modifier.clickable(
onClick = { onClick() },
indication = rememberRipple(color = MyCustomTheme.colors.primary),
interactionSource = remember { MutableInteractionSource() },
)
)
最佳答案
我不知道您是否找到了使其适用于整个应用程序的方法,但我找到了一种方法。所以我发布这个以防其他人有类似的问题。
您可以设置自定义RippleTheme
Gabriele Mariotti 的回答所描述的对象,那么您可以通过 CompositionLocalProvider()
作为 MaterialTheme 中的内容。来自应用程序 theme
的内容然后可以设置为 CompositionalLocalProvider()
的内容.
看看这里:
private object JetNewsRippleTheme : RippleTheme {
// Here you should return the ripple color you want
// and not use the defaultRippleColor extension on RippleTheme.
// Using that will override the ripple color set in DarkMode
// or when you set light parameter to false
@Composable
override fun defaultColor(): Color = MaterialTheme.colors.primary
@Composable
override fun rippleAlpha(): RippleAlpha = RippleTheme.defaultRippleAlpha(
Color.Black,
lightTheme = !isSystemInDarkTheme()
)
}
那么对于您的应用主题,它应该是:
@Composable
fun JetNewsTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit
) {
MaterialTheme(
colors = if (darkTheme) DarkColors else LightColors,
typography = JetNewsTypography,
shapes = JetNewsShapes
) {
CompositionLocalProvider(
LocalRippleTheme provides JetNewsRippleTheme,
content = content
)
}
}
除非您明确设置另一个
RippleTheme
,否则此方法应适用于整个应用程序直接到
AppTheme
下面的 Composables等级制度。并且与其他类型的
ComposableLocalProvider
不冲突您可以直接设置为其他
Composables
的值.
关于android - 修改 Jetpack Compose 中 IconButton 的波纹颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67265345/
如何以编程方式将 TextView 背景设置为 xml/ripple? xml/ripple.xml: 我尝试了
我正在开发 Material Design 界面。我有一些卡片,我希望在单击时产生链式 react 。我已经按照谷歌所说的做了,但没有任何反应。这是我的代码: >
我试图将 FloatingActionButton 波纹设置为类似于 this 来自 Material 设计。 问题是我只得到一个没有波纹的“平面样式”,它只是将按钮从白色更改为橙色,而没有上面链
想象一下我有这么长的一段文字:HELLO THIS IS MY LONG SENTENCE。当我点击它时,我希望 LONG 这个词产生波纹(墨水溅起)。 假设我有这个代码: new RichText(
有人知道 Ripple 是否适用于最新的cordova 版本?因为我正在尝试,我什至无法启动控制面板。当我尝试不使用它时,会弹出一些“警报”: 差距:[“插件管理器”,“启动”,“插件管理器59084
我正在使用 google maps API,我试图让他们的交互式 map 通过 PhoneGap 工作,然后我通过 Ripple 模拟它。 我完全复制了这个教程: http://www.christi
在 Jetpack 中撰写 clickable修饰符默认使用 LocalIndication.current并显示一个绑定(bind)到边界的波纹。这看起来几乎总是很棒,但在某些情况下,圆形的、未绑定
我有一个项目列表(每个项目都包含多个元素),其中每个项目都可以单击并切换 View 。有没有办法对整个md-item-content产生链式 react ?我尝试了 class="ripple" 但这
我正在为我的移动应用程序项目使用 jquery、backbonejs、underscorejs 和 bootstrap 3。我在 ripple 中运行我的应用程序。有时我的控制台会出现这个愚蠢的错误。
我是一名优秀的程序员,十分优秀!