我正在尝试了解哪种布局使用哪种设备。
例如,我有不同的布局:
Nexus 7“(800x1280)使用layout-sw600dp
Samsung GTp3100 7“(600x1.024)使用layout-sw600dp
Samsung Tab 10.1(1280x800)使用layout-sw720dp
Sony XPERIA S 4.3(1280x720)使用布局
你们可以用“你的话”解释为什么XPERIA S不使用sw600dp或sw720dp? SW!=最小宽度? XPERIA S最小的是720.应该使用sw720或sw600,对吧?或者我错了吗?
我已阅读大量文档,但无法理解为何会发生这种情况。
非常感谢。
答案 0 :(得分:5)
最小宽度限定符主要指屏幕尺寸而非物理像素。
例如,使用sw720dp
表示设备的最小屏幕宽度必须为720 dp
(与设备无关的像素) - 这不是大约720个物理像素。从文档......
与密度无关的像素相当于160 dpi屏幕上的一个物理像素,这是系统为“中等”密度屏幕假设的基线密度。
Sony XPERIA S 4.3的物理宽度为2.5英寸,但我不知道屏幕的实际宽度有多少。
让我们假装为了计算屏幕覆盖整个宽度...在这种情况下计算dpi
宽度我们只需使用720 / 2.5 = 288dpi
。
来自dp
...
dp单位到屏幕像素的转换很简单:px = dp *(dpi / 160)。
重新排列上面的公式来计算dp
我们这样做......
dp = px / (dpi / 160)
...这给了我们dp
的宽度(以及必要的最小宽度限定符)......
720 / (288 / 160) = 400dp
简而言之,答案是,索尼XPERIA S 4.3可能有一个高密度屏幕(尺寸),但它不是一个大屏幕。