Xamarin Android 菜单 - NavigationView 背景图片和全屏

Xamarin Android Menu - NavigationView background image and fullscreen

我需要有关 Android 中菜单的帮助...

我的菜单布局是这样的:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:local="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:fillViewport="true">
  <RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    >
    <ImageView
      android:id="@+id/nav_background"
      android:src="@drawable/test_back"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:alpha="1"
      android:scaleType="centerCrop"/>
<android.support.design.widget.NavigationView 
                                              android:id="@+id/navigation_view"
                                              android:layout_height="match_parent"
                                              android:layout_width="match_parent"
                                              android:layout_gravity="end"
                                              android:theme="@style/NavigationViewStyle"
                                              android:fitsSystemWindows="true"
                                              local:itemTextColor="@color/white"
                                              android:background="@color/main_red_opacity"
                                             >

  <LinearLayout  android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_gravity="bottom"
                 android:orientation="vertical">
    <LinearLayout  
      android:layout_marginRight="30dp"
      android:layout_marginLeft="30dp"
      android:layout_marginTop="50dp"
      android:layout_marginBottom="50dp"
      android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:layout_gravity="bottom"
                   android:orientation="vertical">
      <TextView
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:textSize="22dp"
        android:id="@+id/nav_menuItem"
        android:text="MenuItem"
        android:textColor="@color/white"
      />
      <TextView
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:textSize="22dp"
        android:id="@+id/nav_menuItem"
        android:text="MenuItem"
        android:textColor="@color/white"
      />
      <ImageView
        android:layout_marginTop="45dp"
        android:layout_marginBottom="45dp"
        android:layout_height="1dp"
        android:layout_width="match_parent"
        android:background="@color/main_gray"
        />
      <TextView
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:textSize="22dp"
        android:id="@+id/nav_menuItem"
        android:text="MenuItem"
        android:textColor="@color/white"
      />
      <TextView
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:textSize="22dp"
        android:id="@+id/nav_menuItem"
        android:text="MenuItem"
        android:textColor="@color/white"
      />
      <TextView
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:textSize="22dp"
        android:id="@+id/nav_menuItem"
        android:text="MenuItem"
        android:textColor="@color/white"
      />

      </LinearLayout>

    <ImageView
      android:layout_gravity="left"
      android:src="@drawable/logo"
      android:layout_width="match_parent"
      android:layout_height="50dp"
      android:id="@+id/logoBottom"
      android:scaleType="fitCenter" />
    </LinearLayout>

</android.support.design.widget.NavigationView>

  </RelativeLayout>
</ScrollView>

这可行,但我需要在菜单底部使用菜单项进行布局,但结果是:

没有 ImageView 它看起来像这样:

这是我需要的,但背景是图片...

编辑

  <!-- Navigation style -->
  <style name="NavigationViewStyle">
    <item name="android:textSize">18dp</item>
    <!-- menu item text size-->
    <item name="android:listPreferredItemHeightSmall">60dp</item>
    <!-- menu item height-->
  </style>

Github 演示: https://github.com/pinkysek/XabluDemoApp/tree/master/XabluAppTest

RelativeLayout改为FrameLayout:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:local="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:fillViewport="true">
  <FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="start"
   android:background="@drawable/test_back"
    >
  </FrameLayout>
</ScrollView>

并在 FrameLayout 中添加 android:layout_marginLeft="-64dp",在 activity_main.axml 布局中的 ID 为 navigation_frame,如下所示:

<FrameLayout
    android:id="@+id/navigation_frame"
    android:layout_height="match_parent"
    android:layout_width="wrap_content"
    android:layout_marginLeft="-64dp"
    android:layout_gravity="left|start" />