在关闭BottomSheetDialog之后,波纹效果仍然突出显示

时间:2019-07-08 14:39:52

标签: android xml android-layout kotlin

有一个奇怪的行为,就是一个带有波纹效果的按钮和一个BottomSheetDialog,我不知道该如何解决。我有一个带有涟漪效果的按钮(一个RelativeLayout,其中包含Icon和一个Text,可以单击并用作按钮):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="104dp"
    android:layout_height="85dp"
    android:id="@+id/my_icon_layout"
    android:background="@drawable/ripple_background"
    android:orientation="vertical"
    android:padding="8dp"
    android:layout_margin="4dp">

    <ImageView
        android:id="@+id/my_button_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/image_icon" />

    <TextView
        android:id="@+id/my_button_text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:ellipsize="end"
        android:maxLines="2"
        android:textColor="@color/myColor" />

</RelativeLayout>

如您所见,有一个 @ drawable / ripple_background 使该波纹效果在按下时突出显示此按钮:

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/white">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/Mycolor" />
            <corners android:radius="6dp" />
        </shape>
    </item>
</ripple>

问题是,如果在按下此按钮后发生任何错误(例如服务器错误),则会显示BottomSheetDialog,并且在关闭此对话框后,该按钮在被按下时保持突出显示保持该状态直到再次被按下。

关闭BottomSheetDialog后,如何使按钮“重置”为其原始状态?

0 个答案:

没有答案