如何在导航图标中添加阴影?

时间:2017-05-30 08:00:54

标签: android android-layout

我有一个动态背景图像的导航图标(白色),有时当我获得白色bg图像时,导航图标不可见。建议的解决方案是添加阴影,但如何将阴影添加到图标?

3 个答案:

答案 0 :(得分:0)

如果您有自己的工具栏,请尝试此解决方案(添加您自己的图标文件)。

yourtoolbar.post(new Runnable() {
        @Override
        public void run() {
            Drawable drawable = ResourcesCompat.getDrawable(getResources(), R.drawable.your_icon_with_shadow, null);
            yourtoolbar.setNavigationIcon(drawable);
        }
});

答案 1 :(得分:0)

更改白色导航图像并使用.png格式的阴影制作相同的图像

答案 2 :(得分:0)

为阴影创建一个drawable。

抽拉/ shadow.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#1F000000"
        android:endColor="@android:color/transparent"
        android:angle="90" />
</shape>

然后为阴影效果创建一个视图。 使视图的布局相对于要给出阴影的条形图。 最后在视图中引用您的阴影可绘制。

<View
    android:layout_width="match_parent"
    android:layout_height="4dp"
    android:layout_above="@id/bottom_bar"
    android:background="@drawable/shadow"
/>

这是原始解决方案 Android Bottom Navigation Bar with drop shadow