Android:宽度为160dp等于屏幕宽度的100%?

时间:2016-03-03 13:20:48

标签: android xml layout

这是dp单位的定义:(如果它是正确的......)

与密度无关的像素 - 基于屏幕物理密度的抽象单位。这些单位相对于160 dpi的屏幕,因此一个dp是160 dpi屏幕上的一个像素。

那么,对于任何类型的屏幕,宽度为160dp是否等于屏幕宽度的100%?

根据我进行的一些测试,似乎并非如此。

我错了吗?有什么我不明白的吗?

谢谢!

3 个答案:

答案 0 :(得分:3)

没有。 160 dp是1英寸(或非常接近)。他们所说的是如果你有一个160 dpi(每英寸点数)的设备,那么1像素= 1dp。在Android的早期,160 dpi很常见。

答案 1 :(得分:0)

高dpi表示每英寸像素密度,因此160 dpi表示1英寸区域内的160像素。

设备长度= 4英寸,设备呼吸= 3英寸 所以面积= 4 * 3 = 12 squreInches 我们有每平方英寸像素= 160像素 所以屏幕中的像素总数= 12 * 160

呼吸中的像素= 12 * 160/4 = 480像素 长度为12 * 160/3 = 640像素

的像素

160dp的mdpi设备意味着160像素

所以如果你绘制160dp的线,它将覆盖屏幕的1/3。

因为160/480 = 1/3

因此,请检查并提供您的反馈。

有关详细信息,您可以浏览以下链接。

What is the difference between "px", "dp", "dip" and "sp" on Android?

https://www.captechconsulting.com/blogs/understanding-density-independence-in-android

答案 2 :(得分:0)

没有。 1dp是160ppi屏幕的1px。这意味着160dp将精确到1英寸。 屏幕中的dp数量可以是:

No. Of dp = (size(in px)/pixel density)*160

没有。 1 dp中的像素可以是:

no. Of pixels in a dp =pixel density/160.

在160ppi屏幕上: 1px的=一百六十零分之一百六十〇= 1DP。

在240ppi屏幕上: 1px的=一百六十零分之二百四十○= 1.5dp。

在320ppi屏幕上: 1px的=一百六十零分之三百二十○= 2DP。