我一直在开发一款应用,重要的是 drawables 总是与显示宽度相同的尺寸,例如始终是屏幕高度的1/8(以像素为单位)。我理解密度独立像素是如何工作的,但是因为他们的目标是始终代表相同的物理大小,所以它几乎与我需要的相反。我怎么能得到这个?我已经尝试使用具有非常高分辨率和相应缩小比例的.png文件,但它总是模糊,质量损失令人难以置信。 感谢您的帮助,最好的问候。
答案 0 :(得分:0)
有完全相同的问题。这是我的解决方案:
DisplayMetrics displayMetrics = getApplicationContext().getResources().getDisplayMetrics();
Double newHeight = 0.125 * displayMetrics.heightPixels;
yourImageView.getLayoutParams().height = newHeight.intValue();
或者,使用LinearLayout。将ImageView的权重设置为1,将LinearLayout的weightSum设置为8.