如何去除 MaterialCardView 的涟漪效应?
How to remove ripple effect from MaterialCardVew?
如何禁用 MaterialCardView
的触摸波纹效果?
将 clickable
属性设置为 false
或使用 foreground
和 background
属性无效。
我正在使用 material 支持库版本 1.1.0-alpha02.
只有 rippleColor
是 styleable
:
<com.google.android.material.card.MaterialCardView
style="@style/Widget.MaterialComponents.CardView"
app:rippleColor="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</com.google.android.material.card.MaterialCardView>
注意:它不会消除 <androidx.cardview.widget.CardView
的连锁反应。
你可以像那样使用 CSS:
.mdc-card__primary-action.card__primary-action.mdc-ripple-upgraded {
&:hover,
&:focus,
&:active {
&.mdc-card__primary-action::before,
&.mdc-card__primary-action::after {
background-color: rgba(255, 255, 255, 0) !important;
opacity: 0 !important;
}
}
}
只需在xml中使用此属性:
app:rippleColor="@android:color/transparent"
或在 Kotlin 中以编程方式:
cardView.rippleColor = ColorStateList.valueOf(Color.TRANSPARENT)
如何禁用 MaterialCardView
的触摸波纹效果?
将 clickable
属性设置为 false
或使用 foreground
和 background
属性无效。
我正在使用 material 支持库版本 1.1.0-alpha02.
只有 rippleColor
是 styleable
:
<com.google.android.material.card.MaterialCardView
style="@style/Widget.MaterialComponents.CardView"
app:rippleColor="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</com.google.android.material.card.MaterialCardView>
注意:它不会消除 <androidx.cardview.widget.CardView
的连锁反应。
你可以像那样使用 CSS:
.mdc-card__primary-action.card__primary-action.mdc-ripple-upgraded {
&:hover,
&:focus,
&:active {
&.mdc-card__primary-action::before,
&.mdc-card__primary-action::after {
background-color: rgba(255, 255, 255, 0) !important;
opacity: 0 !important;
}
}
}
只需在xml中使用此属性:
app:rippleColor="@android:color/transparent"
或在 Kotlin 中以编程方式:
cardView.rippleColor = ColorStateList.valueOf(Color.TRANSPARENT)