【发布时间】:2016-03-29 16:02:37
【问题描述】:
我有一个背景为黑色的 ListView。现在我的问题是默认的涟漪效果也是黑色的,用户无法真正看到它。
如何在不依赖 API 级别的情况下更改波纹效果的颜色? (我想实现白色)。
【问题讨论】:
我有一个背景为黑色的 ListView。现在我的问题是默认的涟漪效果也是黑色的,用户无法真正看到它。
如何在不依赖 API 级别的情况下更改波纹效果的颜色? (我想实现白色)。
【问题讨论】:
您可以将其设置为您的视图背景:
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?android:attr/colorAccent">
<item android:id="@android:id/mask">
<color android:color="#42ffffff" />
</item>
有关更多详细信息,请参阅 stackoverflow 上的此问题:
What should be the color of the Ripple, colorPrimary or colorAccent? (Material Design)
您可以将此库用于较低的 api:
【讨论】:
简单的方法是在你的 colors.xml 文件中定义这两种颜色
<color name="ripple_material_dark">#33ffffff</color>
<color name="ripple_material_light">#1f000000</color>
干杯。
【讨论】:
只需在您的styles.xml 中添加带有所需颜色的'item: colorControlHighlight'
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorControlHighlight">@color/white</item>
</style>
【讨论】:
当使用Theme.MaterialComponents.* 主题时,波纹颜色可以定义为
添加以下行,即 Ouline Button 样式。
<item name="rippleColor">@color/outline_button_ripple_color</item>
【讨论】: