Je voulais définir la couleur d'arrière-plan de mon tiroir de navigation dans Java mais il semble que setBackgroundColor
et toutes les méthodes similaires n'ont aucun effet. Seule la ligne XML Android:background="@color/mycolor"
travaille. Si vous supprimez la ligne xml et essayez l'une des méthodes, le tiroir reste transparent.
Des idées?
Je viens de résoudre mon propre problème.
J'ai totalement oublié que ce n'est pas le DrawerLayout
sur lequel je veux définir l'arrière-plan, mais le ListView
à l'intérieur.
J'avoue que j'ai rendu les choses un peu difficiles pour vous sans ajouter de code à mon post -.- '
Donc au lieu de:
private DrawerLayout mDrawerLayout;
(...)
mDrawerLayout.setBackgroundResource(int);
Je devais faire ça:
private ListView mDrawerList;
(...)
mDrawerList.setBackgroundResource(int);
Dans votre activity_main.xml, incluez les éléments suivants
<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"/>
cassez votre tiroir de navigation en navigationView et procédez comme suit
navigationView.setBackgroundColor(getResources().getColor(R.color.colorPrimaryDark));