Android elevation 和 setElevation 效果不一样

标签 android xml shadow android-elevation pixel-density

我注意到当我在 xml 中使用 elevation 属性并将其设置为 4dp 时,我得到了一个正常的阴影。当我在 java 中使用 setElevation(4) 时,我得到的阴影比 xml 属性少。我该如何解决?

最佳答案

answer Anton Kovalyov 给出的几乎是正确的,但实际上恰恰相反。要获得正确的高度,您需要将 dp 转换为像素并将其输入 setElevation,因此正确的答案如下所示:

setElevation(4 * context.getResources().getDisplayMetrics().density);

setElevation 采用像素值。用户 TinTran 的 comment是正确的。

关于Android elevation 和 setElevation 效果不一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30692999/

相关文章:

android - 带有链接和标题android的Facebook图像共享

javascript - 应用程序错误是一个目录(文件 :///#android_asset/www/index. html)

PHP:如何从 XML 获取值并将其相乘?

objective-c - 从 subview 中删除阴影

android - Android操作系统是否有/etc/passwd、/etc/shadow、/etc/group等文件?

flutter - 如何在 ListTile 中添加阴影,如 'elevation'

android - crunchPngs 在 Android buildTypes 中意味着什么?

android - 发布Apk时是否需要在应用内发布该应用的产品?

c# - Linq to XML 加入并添加数据?

c# - 使用 C# 从 XML 文件中删除数据?