设置导航抽屉的背景颜色

mik*_*b93 34 android navigation-drawer

我想在java中设置我的导航抽屉的背景颜色,但似乎setBackgroundColor和所有类似的方法都没有效果.只有XML行android:background="@color/mycolor"正在运行.如果删除xml行并尝试其中一种方法,则抽屉保持透明.

有任何想法吗?

Goo*_*ife 70

在您的activity_main.xml中包含以下内容

<android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:headerLayout="@layout/navigation_drawer_header"
    app:menu="@menu/menu_drawer"
    android:background="@color/color_navigation_list_background"
    app:itemIconTint="@color/color_selector_navigation_item"
    app:itemTextColor="@color/color_selector_navigation_item"/>
Run Code Online (Sandbox Code Playgroud)


mik*_*b93 26

我刚解决了自己的问题.

我完全忘了这不是DrawerLayout我想设置背景,而是ListView内部.

我承认,如果不在我的帖子中添加代码,我会为你们做一些努力.-'

所以代替:

private DrawerLayout mDrawerLayout;
(...)
mDrawerLayout.setBackgroundResource(int);
Run Code Online (Sandbox Code Playgroud)

我不得不这样做:

private ListView mDrawerList;
(...)
mDrawerList.setBackgroundResource(int);
Run Code Online (Sandbox Code Playgroud)


Al *_*hik 5

将导航抽屉投射到 navigationView 并执行以下操作

 navigationView.setBackgroundColor(getResources().getColor(R.color.colorPrimaryDark));
Run Code Online (Sandbox Code Playgroud)