缩放可绘制的不是密度(倾角),而是实际像素分辨率(px)

时间:2017-09-28 14:06:14

标签: android user-interface android-drawable image-scaling density-independent-pixel

我一直在开发一款应用,重要的是 drawables 总是与显示宽度相同的尺寸,例如始终是屏幕高度的1/8(以像素为单位)。我理解密度独立像素是如何工作的,但是因为他们的目标是始终代表相同的物理大小,所以它几乎与我需要的相反。我怎么能得到这个?我已经尝试使用具有非常高分辨率和相应缩小比例的.png文件,但它总是模糊,质量损失令人难以置信。 感谢您的帮助,最好的问候。

1 个答案:

答案 0 :(得分:0)

有完全相同的问题。这是我的解决方案:

DisplayMetrics displayMetrics = getApplicationContext().getResources().getDisplayMetrics();
Double newHeight = 0.125 * displayMetrics.heightPixels;
yourImageView.getLayoutParams().height = newHeight.intValue();

或者,使用LinearLayout。将ImageView的权重设置为1,将LinearLayout的weightSum设置为8.