问题描述
我想在NavigationDrawer
边添加边框和图像,该怎么做。我尝试过,但是找不到适合的教程。当我们在Android中选择一个导航抽屉活动时,我的XML文件是可以获取的,其中没有任何变化。
我在下面大致画出了我想要的样子。任何帮助将不胜感激,谢谢。另外,请忽略标题的橙色背景。我不想要它,我只想要头部和身体上的Gru图像
我希望图像位于导航抽屉的主体和标题上。一张覆盖主体和标题的图像。
解决方法
虽然这看起来很艰难,但您可以通过不同地设计页眉和导航的背景来轻松实现此目的。尝试将图像放在导航栏背景中并使标题背景透明,以便显示相同的图像。另外,您应该对蓝色边框使用笔触。
让我为您展示一个基本示例
对于导航标题
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<stroke android:color="@color/blueshade"
android:width="4dp"
/>
<corners android:topRightRadius="35dp"
/>
<solid android:color="@android:color/transparent"/>
</shape>
对于导航栏
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<stroke android:color="@color/blueshade"
android:width="4dp"
/>
<corners android:topRightRadius="35dp"
android:bottomRightRadius="35dp"/>
<solid android:color="@android:color/white"/>
</shape>
</item>
<item android:right="20dp" android:left="5dp" android:top="5dp" android:bottom="5dp" >
<bitmap android:src="@drawable/gru"
android:gravity="fill"
android:alpha="105"
/>
</item>
</layer-list>
现在您可以在nav_header_main
布局中将导航顶部设置为NavigationView
的背景,将导航栏设置为activity_main
的背景