如何创建圆形波纹?

How to create circular ripple?

我想创建类似的波纹效果,如红色框所示并用箭头指示。

每当我将 selectableItemBackground 设置为任何元素时,它只会在元素的布局边界上显示波纹,这与我上面分享的不同。

请分享一个工作示例。谢谢

使用 selectableItemBackgroundBorderless 代替 selectableItemBackground

您可以创建简单的波纹可绘制文件:

/res/drawable/transparent_ripple.xml

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="#77333333" />

android:background="?selectableItemBackgroundBorderless"

<androidx.appcompat.widget.AppCompatImageView
        android:id="@+id/imageViewCancel"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:src="@drawable/ic_x"
        android:background="?selectableItemBackgroundBorderless"
        app:layout_constraintBottom_toTopOf="@id/lineTopHorizontal"
        app:layout_constraintStart_toEndOf="@id/lineVerticalStart" />

背景

使用actionBarItemBackground
android:background="?android:attr/actionBarItemBackground"