android - 添加阴影以滑出导航

标签 android

我已经使用 this 实现了滑出式导航. current implementation

内容应该在菜单列表的右边缘附近有阴影;喜欢expected result

我试图通过向内容左边缘添加 View 来添加阴影,但它不会显示。

任何有关如何执行此操作的线索将不胜感激。

最佳答案

伙计们,我知道我迟到了,但我很难找到令我满意的这个问题的答案,所以我只想分享我对此的解决方案。首先,创建一个可绘制的 navbar_shadow.xml 并将其与其他可绘制对象放在一起。它只是一个具有透明渐变的矩形。

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <gradient android:startColor="#111"
        android:endColor="#00000000">
    </gradient>
    <size
        android:height="@dimen/activity_vertical_margin"
        android:width="5dp">
    </size>
</shape>

然后,无论您在何处实例化抽屉,都使用 DrawerLayout 变量将其附加到抽屉。

mDrawerLayout.setDrawerShadow(R.drawable.navbar_shadow, Gravity.LEFT);

砰。无需逐行绘制或包含任何额外资源。您可以使用自己的 startColor 来匹配您的抽屉颜色,但 endColor 应该保持为 #00000000,因为它是透明的黑色。

关于android - 添加阴影以滑出导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11342522/

相关文章:

Android 启动服务 onStart 和另一个问题

java - 如何在android中以编程方式更改编辑文本的位置?

android - 如何从 Android 上的电话号码中查找联系人的姓名?

android - 统计远端电话响铃次数

java - 在Android中访问ListView复选框

android - 安卓双向滚动

java - 在 Java 中设置 char 数组的大小

android - MR版本代表什么?

android - 谷歌玩游戏 : messaging other players

java - 如何展平2个不同的图像层?