我正在使用这个 RoundedCorners库(基于Romain Guy 的帖子),它允许将轮廓边框和圆角矩形图像设置为 imageView 。
我需要在显示的图像中添加一个外阴影(意味着它在显示的图像之外)(比如,向东南方向)。我已经决定,由于边框是所显示内容的较大部分,我将使用 RoundedDrawable 中的下一个额外代码将阴影添加到它而不是图像:
mBorderPaint.setShadowLayer(shadowRadius, shadowDx, shadowDy, shadowColor);
当然,我还添加了字段并用值填充它们。
问题是,阴影似乎忽略了我给它的 dx,dy 值,它只是将背景设置为整个 imageView 。
我在这里读过,有些人声称在新的 android API(从 11+ 开始)上使用 setShadowLayer 将无法工作,除了文本,因为它试图使用 GPU ,但我也在 API10 上对其进行了测试并且它具有相同的结果。
怎么会这样?我应该怎么做才能修复它或使用替代方法?
我假设我可以添加一个新的油漆,就像用于边框的油漆一样,但这意味着我需要更改更多依赖它的代码(或者实际上我需要这样做?)。另外,我可能会让它比真实阴影显示的更难看。