[英]How to add top shadow on rectangle drawable
我有一个只需要显示顶部阴影的矩形可绘制对象,我不能使用高度,因为它会在所有组件中放置阴影,而我只需要在此可绘制对象顶部放置一个阴影
我需要的
我目前拥有的
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/white" />
<corners
android:topLeftRadius="20dp"
android:topRightRadius="20dp" />
</shape>
这会为视图绘制边框,但上面没有顶部阴影,而只是一个纯白色图像
解决这个问题的最直接的方法是创建一个 9-patch 阴影图像,然后将其与视图顶部对齐,但这种方法存在一些问题,比如无法使用角半径值,解决问题等。
另一种选择是生成视图的模糊图像(例如,使用 Renderscript / ScriptIntrinsicBlur),然后将其保存到 bitmap,并使用该图像作为阴影 - 尽管此选项有些麻烦并且性能成本很高。
另一种选择是正常使用高程,然后让这个视图一直对齐到屏幕底部,或者让另一个具有相同高程值的视图遮挡底部的阴影。
恐怕除此之外没有办法直接控制高程阴影的渲染方式,也没有办法访问直接绘制这个的 Android SDK 代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.