我已经在我的应用程序中实现了一个NavigationDrawer
。我想知道如何添加一个垂直阴影效果,它在主片段下面,类似于下面的图片。
我有一张带有阴影图像的图片放在我的drawable文件夹里,它叫做“drawer_shadow.9”,但我不知道如何在我的NavigationDrawer
中实现它。
我已经在我的应用程序中实现了一个NavigationDrawer
。我想知道如何添加一个垂直阴影效果,它在主片段下面,类似于下面的图片。
我有一张带有阴影图像的图片放在我的drawable文件夹里,它叫做“drawer_shadow.9”,但我不知道如何在我的NavigationDrawer
中实现它。
你需要使用drawable来创建阴影效果。在navigationDrawer对象上使用setDrawerShadow
方法。例如:
navigationDrawer.setDrawerShadow(R.drawable.someDrawable, GravityCompat.START);
官方文件链接:setDrawerShadow
希望这有所帮助。
R.drawable.someDrawable
部分的信息吗?你有样例吗?它是一个 png 图片文件还是类似于通过 xml 创建的渐变效果? - RCB(右侧抽屉) 活动布局:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
...
</LinearLayout>
<LinearLayout
android:layout_width="280dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:orientation="horizontal">
<View
android:layout_width="20dp"
android:layout_height="match_parent"
android:background="@drawable/drawer_shadow"
android:paddingEnd="0dp"
android:paddingLeft="-20dp"
android:paddingRight="0dp"
android:paddingStart="-20dp" />
<fragment
android:id="@+id/fragment_drawer"
android:name="com.....HomeDrawer"
android:layout_width="260dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:choiceMode="singleChoice"
tools:layout="@layout/drawer_home" />
</LinearLayout></android.support.v4.widget.DrawerLayout>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#00FFFFFF"
android:endColor="#f2e9e9e9"
android:type="linear" />
<size
android:height="@dimen/activity_vertical_margin"
android:width="5dp">
</size>
</shape>
drawer_shadow.9
是否也适用于右侧抽屉? - Alexander Farberdrawer_shadow.9
。 - Aspicas