Установите FrameLayout под панелью приложений при использовании NavigationDrawer

#android #xml #navigation-drawer #android-appbarlayout #android-framelayout

#Android #xml #навигация-ящик #android-appbarlayout #android-framelayout

Вопрос:

Моя проблема, вероятно, может быть решена довольно легко, но я, к сожалению, не могу разгадать трюк. Я настроил a NavigationDrawer , используя тот, который предоставлен Android Studio. Моя проблема в том, что я не могу разместить FrameLayout под панелью приложений, не делая NavigationDrawer ее непригодной для использования. Я попробовал несколько вещей, таких как использование линейного макета или попытка относительного макета android:layout_below . Но каждый раз, когда я делаю подобные вещи, переключение фрагментов в FrameView с NavigationDrawer помощью больше не работает.

Мой XML-код для справки:

 <?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@ id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">


<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <include
        android:id="@ id/appbar"
        layout="@layout/app_bar_main_map"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <FrameLayout
        android:id="@ id/content_frame"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</RelativeLayout>


<android.support.design.widget.NavigationView
    android:id="@ id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:menu="@menu/activity_main_map_drawer" />


</android.support.v4.widget.DrawerLayout>
  

Если вам понадобится какой-либо дополнительный код, я опубликую его так быстро, как только смогу.

Любая помощь очень ценится.

Ответ №1:

 `android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"`
  

Удалите приведенный выше код из макета содержимого.