4

вот мой XML:Не может нажать кнопки за DrawerLayout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".Main" 
android:background="@android:color/black" > 

    <RelativeLayout 
    android:id="@+id/layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <ImageButton 
     android:id="@+id/calendar" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignTop="@+id/about" 
     android:layout_centerHorizontal="true" 
     android:background="@drawable/calendar" /> 

    <ImageButton 
     android:id="@+id/okan" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignTop="@+id/calendar" 
     android:layout_marginLeft="20dp" 
     android:layout_toRightOf="@+id/calendar" 
     android:background="@drawable/okanliyiz"/> 

    <ImageButton 
     android:id="@+id/about" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginRight="20dp" 
     android:layout_marginTop="140dp" 
     android:layout_toLeftOf="@+id/calendar" 
     android:background="@drawable/info" /> 

</RelativeLayout> 

<android.support.v4.widget.DrawerLayout 
android:id="@+id/drawer_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:clickable="false" > 

<FrameLayout 
    android:id="@+id/content_frame" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:clickable="false" /> 

<ListView 
    android:id="@+id/left_drawer" 
    android:layout_width="240dp" 
    android:layout_height="match_parent" 
    android:layout_gravity="start" 
    android:choiceMode="singleChoice" 
    android:divider="@android:color/transparent" 
    android:dividerHeight="0dp" 
    android:background="#111"/> 
</android.support.v4.widget.DrawerLayout> 


</RelativeLayout> 

Я написал программную часть, и Drawer работает просто отлично, это просто, что я не могу нажать ImageButton s за Это. Если я поставлю кнопки впереди, я могу щелкнуть их, но хорошо, тогда ящик оставлен позади, и это ужасное зрелище. Какая работа для этого? Как я могу щелкнуть по кнопкам за ящиком и увидеть ящик спереди?

Заранее спасибо.

ответ

7

В соответствии с Navigation Drawer guideDrawerLayoutshould be the root вашего макета. Он должен иметь только 2 ребенка - тот, который содержит ваш «основной контент» - кнопки, текстовые поля и т. Д. И другой должен быть содержимым самого ящика. Нечто подобное:

<RelativeLayout> 

    <RelativeLayout> 
     <Button/> 
     <EditText/> 
    </RelativeLayout> 

    <ListView android:id="@+id/drawer_list" /> 

</RelativeLayout> 

В дополнение: Порядок 2 детей имеет важное значение из-за Z-порядка от DrawerLayout (который является ViewGroup). Представление списка должно быть объявлено после основного содержимого, чтобы оно было упорядочено (и отображено) перед ним.

Смежные вопросы