2015-07-19 156 views
1

我有一個小的ImageButton放在上面/右上角和Button後面,包裝所有的內容。ImageButton在按鈕觸摸

我認爲正常的行爲可能是當觸摸小ImageButton時,它會收到觸摸。但目前的行爲是,當它被觸摸時,就像不存在,並將觸摸傳遞給後面的按鈕。

我嘗試使用android:clickable屬性,把ImageButton的小也android:clickable="true",還有很多其他的東西。

這是一個圖像,選擇了兩個元素和.xml。我認爲這不是很複雜的事情,但我不知道我做錯了什麼。

謝謝大家。

Selected elements

<?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> 

回答

1

我認爲你的按鈕具有比ImageButton的高海拔。 事實上,如果您爲背景按鈕設置顏色,您將看不到最喜歡的imageButton。所以,改變你的Button到ImageButton可以解決這個問題。

檢查此鏈接:stackoverflow thread

我希望這能幫助你;)

+0

是,海拔是解決方案。我添加了'android:elevation =「1dp」'和'android:elevation =「2dp」'並解決了錯誤的行爲。 但是,它在棒棒糖設備中效果不錯嗎? Android Studio不會給我任何錯誤。 – emmgfx