我假设术语与密度无关的像素和与设备无关的像素具有相同的含义。
与密度无关的像素(dip)是虚拟像素单位,相当于160dpi
(MDPI)屏幕上的一个物理像素。
4dip
与320dpi
(XHDPI)屏幕等效,因为用于在320dpi屏幕上呈现相同数据的像素数为4
(2像素宽,2像素向下)。
如何计算240dpi
(HDPI)屏幕的像素单位?
答案 0 :(得分:1)
HDPI是MDPI的x1.5。
那是160x1.5 = 240。
在MDPI设备上,这是dip设备的标准配置,1dip是1px。 在HDPI设备上,物理上相同的大小1dip是1.5px。
当您最初知道一些px值时,您可以通过以其比例将其转换为dip,例如,因此HDPI的比例为1.5,您可以将px值除以1.5。
对于相同的2dip,HDPI有3px横向和向下,而MDPI横向和向下2px。
2dip => 2px on MDPI
2dip => 2 x 1.5 = 3px on HDPI
dip 的概念是1 dip意味着近似1/160英寸的物理尺寸,它是具有不同像素密度的所有设备的常见物理尺寸。
答案 1 :(得分:0)
您可以使用此one之类的DPI计算器。您可以检查http://petrnohejl.github.io/Android-Cheatsheet-For-Graphic-Designers/#screen-densities-and-icon-dimensions的DPI比例。使用它,HDPI = MDPI x 1.5所以在你的情况下,值将是240
答案 2 :(得分:0)
您可以使用此功能根据当前设备指标从dp获取像素值。
public int dpToPx(int dp){
return Math.round(dp*(getResources().getDisplayMetrics().xdpi/ DisplayMetrics.DENSITY_DEFAULT));
}