如何更改导航抽屉菜单背景?

时间:2019-09-21 14:35:11

标签: android

如何更改android导航抽屉的菜单背景?     我在stackoverflow上尝试了很多方法,但是失败了。

in its documentation 它没有用。

activity_main_drawer.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:showIn="navigation_view">

          <item
            android:id="@+id/nav_home"
            android:icon="@drawable/ic_home_white_24dp"
            android:title="@string/menu_home"
            xmlns:app="http://schemas.android.com/apk/res-auto"
            app:itemBackground="@drawable/homedr"
            />
</menu>

styles.xml

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/cardview_dark_background</item>
        <item name="colorPrimaryDark">@color/cardview_dark_background</item>
        <item name="colorAccent">@color/cardview_dark_background</item>



    </style>

    <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

    <style name="AppTheme.PopupOverlay"

1 个答案:

答案 0 :(得分:0)

您必须在NavigationView中这样做

android:background="@color/color_navigation_view_background"

或使用Java

mNavigationView.setBackgroundColor(getResources()。getColor(R.color.colorPrimaryDark));

我假设您正在使用AndroidX,就是这样。

<com.google.android.material.navigation.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/navigation_header"
    android:background="@color/color_navigation_view_background"
    app:itemIconTint="?colorAccent"
    app:menu="@menu/drawer_menu">
  </com.google.android.material.navigation.NavigationView>