ImageButton over Button 触摸

ImageButton over Button touch

我在top/right角放了一个小ImageButton,后面放了一个Button,把所有的内容都包起来了。

我认为正常的行为可能是触摸小ImageButton时,它会收到触摸。但是目前的行为是当它被触摸时,就像不存在一样,并将触摸传递给后面的按钮。

我尝试使用 android:clickable 属性,将小的 ImageButton 放在 FrameLayout 中,也使用 android:clickable="true",还有很多其他东西。

这是一张图片,其中选择了两个元素,并且 .xml。我认为这不是很复杂的事情,但我不知道我做错了什么。

谢谢大家

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/ivBackground"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"
        android:src="@drawable/club_placeholder" />


    <TextView
        android:id="@+id/tvName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:gravity="center_vertical"
        android:lines="1"
        android:textColor="#fff"
        android:textSize="16sp"
        android:textStyle="bold"
        android:layout_centerInParent="true" />

    <Button
        android:id="@+id/btBackground"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/background_tab"
        android:layout_alignLeft="@+id/ivBackground"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignBottom="@+id/ivBackground" />

    <ImageButton
            android:id="@+id/btFavorite"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/background_tab"
            android:padding="15dp"
            android:src="@drawable/ic_favorite_border_white_24dp"
            android:clickable="true"
            android:contentDescription="Favorite"
            android:layout_alignParentTop="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true" />

</RelativeLayout>

我认为您的 Button 的高度比 ImageButton 高。 事实上,如果您为背景按钮设置颜色,您将看不到最喜欢的 imageButton。因此,将 Button 更改为 ImageButton 可以解决问题。

检查此 link:

希望对您有所帮助 ;)