设置 TextInputEditText drawable 的点击侦听器 Right/End android studio

Setting on click listener to TextInputEditText drawable Right/End android studio

我有一个文本输入布局,里面有文本输入编辑文本。 Text Input Edit Text 最后有一个 Drawable。我想要实现的是让最后的可绘制对象在单击时做一些事情,例如显示 Toast 消息

下面是我的XML代码


<com.google.android.material.textfield.TextInputLayout
            android:id="@+id/til_toast"
            style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginStart="5dp"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="5dp"
            android:layout_marginEnd="5dp"
            android:layout_marginRight="5dp"
            android:layout_marginBottom="5dp"
            android:padding="3dp">

            <!--android:maxLength="13"-->
            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/et_toast"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:drawableEnd="@drawable/ic_calendar"
                android:drawableRight="@drawable/ic_calendar"
                android:hint="@string/date_from"
                android:inputType="date" />

        </com.google.android.material.textfield.TextInputLayout>

我怎样才能做到这一点

不要在 TextInputEditText 中使用 android:drawableRightandroid:drawableEnd

您可以使用:

<com.google.android.material.textfield.TextInputLayout
    ...
    app:endIconMode="custom"
    app:endIconDrawable="@drawable/..."

然后使用 endIconOnClickListener:

textInputLayout.setEndIconOnClickListener {
  // Respond to end icon presses
}