2012-04-12 15 views
17

w poniższym interfejsie Mam to poniżej drabable nakładające się na cały ekran. LinearLayout jest przejrzysty i umożliwia sterowanie przyciskami poniżej, które można klikać lub dotykać. Zasadniczo mogę przewinąć listę poniżej tego LinearLayout, a także elementy sterujące kliknięciem. Jak mogę to wyłączyć?android - układ overdraw pozwala na dotyk poprzez LinearLayout

Patrz załączony przykład. enter image description here

Dziękuję

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/rlExtNavbar" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="fill_vertical" 
    android:layout_gravity="fill_vertical" 
    android:background="@color/transparent" xmlns:tools="http://schemas.android.com/tools" tools:ignore="Overdraw"> 
    <RelativeLayout 
     android:id="@+id/expandedNavbarLayout" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 
    </RelativeLayout> 
    <LinearLayout 
     android:id="@+id/transparentLayout" 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/expandedNavbarLayout" 
     android:focusableInTouchMode="false" 
     android:focusable="false" 
     android:background="@color/fulltransparent"> 
    </LinearLayout> 

</RelativeLayout> 

Odpowiedz

2

Przypisany kliknięcie do układu liniowego i rozwiązać go. Szczerze mówiąc, to nie powinno działać w ten sposób, ale to rozwiązało problem. Kliknięcie jest puste.

107

Wystarczy ustawić właściwośćdla LinearLayout w pliku XML, aby zapobiec kliknięciom przechodzenia - nie ma potrzeby stosowania detektora kliknięcia.

+9

Ta odpowiedź musi zostać przyjęta! –

+0

Jedyny problem polega na tym, że naciśnięty stan propaguje do wszystkich elementów sterujących podrzędnych widoku, który ma klikalny zbiór prawdy. na przykład przyciski klikają animacje po kliknięciu w tło. –

+1

Niestety, nie zadziałało to dla mnie. – NarendraJi

0

Co pracowało dla mnie było umieszczenie LinearLayout przed wewnętrznym RelativeLayout w xml.