【发布时间】:2019-06-14 08:14:13
【问题描述】:
这里有点类似的问题,但答案是删除高程和阴影......不是我想要的:Android CardView with weird border when transparent
我想要的是 Pixel Launcher 搜索栏中显示的内容...即具有半透明背景和阴影的形状,但 阴影不与白色形状重叠 (最终会使它看起来是灰色的)。我基本上想要一个阴影,但在我的形状中间有一个洞......
这是我尝试过的,但您可以从所附图片中看到,灰色阴影来自半透明的白色背景。
activity_main.xml
<FrameLayout
android:layout_width="120dp"
android:layout_height="120dp"
android:background="@drawable/rectangle"
android:elevation="8dp" />
矩形.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="4dp" />
<solid android:color="#aaffffff" />
</shape>
您可以看到,即使我的形状在白色背景上是半透明的白色,它也会因为下面的阴影而变成灰色,这不是我想要的。
我也尝试过使用 View#setOutlineProvider,但没有成功。
我也试过玩https://github.com/harjot-oberai/MaterialShadows
如果可以避免的话,我不想使用 9patch 图像。
【问题讨论】:
-
你有没有机会在卡片视图上方使用它?
-
您的布局可以按照您的意愿完美运行。
-
灰色阴影是使用高程的结果。尝试将海拔值设置为
0dp -
@KaranMer 正确,但这也会消除阴影,这是想要的
-
您是否尝试过使用较小的海拔值例如
2dp?高程值越大,阴影越暗
标签: android transparent shadow