android - 为什么在分配了最大可能像素后,图像在 hdpi 屏幕[运行 android] 上显得模糊?
问题描述
我想在我的应用程序屏幕上的某处放置一个 40 X 40 DP 图标。现在根据6个不同逻辑桶的比例(3:4:6:8:12:16),我在6个不同的drawable文件夹中提供了一个不同大小的图标(.png文件)。
在我的情况下,图标大小必须为“MDPI = 40 X 40 PX、HDPI = 60 X 60 PX、XHDPI = 80 X 80 PX 等等”,以在 40 X 40 DP 的设备上保持相同的质量。
这样做之后,我在具有 HDPI 屏幕的设备上测试该应用程序,这意味着它应该查看“drawable-HDPI”文件夹并渲染一个基本上填满所有像素的图像(60 px 在有60px(基于屏幕))。但不知何故,图标显得模糊。
这里出了什么问题!?
同时,我尝试在 HDPI 文件夹中放置一个像素更高(512 x 512 PX)的图标,它以高质量呈现。
唯一的困惑是 -尽管在 HDPI 显示器上填充了 40 DP 中包含的所有像素,但具有更多像素(512)的图像如何具有更好的质量?
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/nameOfImage"/>
解决方案
嗨,你应该在 Sketchup 中设置一个参数
检查:在 mac /sketchup/preference/opengl/显示纹理的最大尺寸
在 pc /menu/windows/preference/opengl/显示纹理的最大尺寸
推荐阅读
- pandas - 在 Seaborn/其他库中聚合的 FacetGrid 图
- javascript - 脚本无法在 Internet Explorer 11 (ie11) 上运行
- python - 无法在 Windows 上通过 CMD 运行 GitHub 文件
- javascript - 同时基于class和ID的querySelector条件
- javascript - 无法在同一 y 轴上查看两个系列的 dygraph 图表。如果显示两者,则仅显示其中之一
- javascript - 在执行具有 async.waterfall 的方法之前退出测试
- c# - 如何使用 C# 获取设备 UUID
- javascript - 全局范围 createReadStream 不适用于回调
- python - Django自定义登录表单不显示输入字段
- terraform - newrelic_nrql_alert_condition 的描述参数是否等于自定义警报描述?