Android如何使用自定义选择器产生涟漪效应

Android如何使用自定义选择器产生涟漪效应,android,textview,selector,ripple,Android,Textview,Selector,Ripple,我正在创建一个表示键盘的自定义视图,它的布局非常简单,只需在表布局中放置9个textView。我想,当我按下其中一个键时,会出现漂亮的圆形波纹效果 这就是我到目前为止所做的 drawable/button_selector.xml(颜色/所选为浅蓝色) xml(我在attrs.xml中添加了可选的\u bg\u borderless) [....] @可牵引/btn_选择器 [..] ?可选择的\u bg\u无边界 [..] 布局/视图_keypad.xml <TableRow

我正在创建一个表示键盘的自定义视图,它的布局非常简单,只需在表布局中放置9个textView。我想,当我按下其中一个键时,会出现漂亮的圆形波纹效果

这就是我到目前为止所做的

drawable/button_selector.xml(颜色/所选为浅蓝色)


xml(我在attrs.xml中添加了可选的\u bg\u borderless)


[....]
@可牵引/btn_选择器
[..]
?可选择的\u bg\u无边界
[..]
布局/视图_keypad.xml

<TableRow
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1.0"
        android:gravity="center">

        <TextView
            android:id="@+id/key_1"
            style="@style/AppTheme.Text.KeypadKey"
            android:text="1"/>

        [....]
    </TableRow>

[....]
然而,当我按下“1”时,我确实会出现一个蓝色背景,但它是一个原始的简单正方形。。我该如何归档这样的东西


确保主题为appcompat,只需将视图的背景属性更改为

android:background="?selectableItemBackgroundBorderless

尝试将您按钮的背景更改为android:background=“?selectableItemBackgroundBorderless”注意,您必须使用应用程序战斗主题进行此操作。。。是的,我应该把它放在答案中,你把它标记为已解决,这样它可以帮助其他人吗?是的,去吧,我已经创建了一个values-v21/style.xml,并用?android:SelectableItemBackgroundless
<TableRow
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1.0"
        android:gravity="center">

        <TextView
            android:id="@+id/key_1"
            style="@style/AppTheme.Text.KeypadKey"
            android:text="1"/>

        [....]
    </TableRow>
android:background="?selectableItemBackgroundBorderless