codenameone 中的 "dip" 是什么?

What is a "dip" in codenameone?

看过很多次CN.convertToPixels (float dipCount)等方法中使用的dipCount参数指的是物理毫米转换为像素的数量,具体取决于密度屏幕。

但是,javadoc 提到 dipCount 是

The dips that we will convert to pixels

,这其实是微不足道的。但问题是,"dip"(密度无关像素)或 "dp" 是众所周知的,代表 160 dpi 屏幕上像素的物理尺寸。这意味着 1dip = 1 inch / 160 = 25.4mm / 160 =~ 0.16mm ,而不是前面提到的 "roughly 1mm"。

那么,最后,名为 dipCountint 参数实际上代表 ~1mm 吗?如果是,为什么使用那个名字?我是不是觉得哪里不对?

干杯

这是在每个平台的 dips 非常不同并且在 Windows 桌面上与 Android 上的定义不同时编写的。所以我们也创造了毫米的不同定义。随着岁月的流逝,我们专注于术语毫米以避免混淆,但初始常数仍然存在,并且仍在代码中互换使用。

所以代号一 DIP == 毫米。这意味着 0.159mm == 1 Android DP.