将px值分配给所有Android设备的布局

Assign px value to layout across all Android devices

我正按照一套规范设计布局。我基本上需要在布局和Android设备之间留出一些空间。下图仅供参考

enter image description here

我正在使用以下网站将给定像素转换为dp值AndroidPixelConverter

我在xxxhdpi列中给出px值并得到它各自的dp值,我把它放在我的xml布局中。

我正在测试的主要手机是三星S4和Nexus5

以下是我的问题:

  • 根据这个网站Nexus5和三星S4属于xxhdpi分辨率,但如果我在上面提到的AndroidPixel Converter网站中使用xxxhdpi列,我仍然得到正确的像素值。为什么是这样 ?
  • Nexus5有软导航栏,三星S4有硬按钮作为导航。如何检测它并相应地为我的布局赋值。如果我没有错,导航栏的高度为144px,如果不存在则会更改布局尺寸。我怎么处理这个?
  • 最后,我正在遵循正确的方法吗?如果不是,请以正确的方式指导。

    P.S:我正在寻找所有设备的像素完美布局。可能吗 ?


    您需要与您的设计师交谈,并以不同的方式处理事情。 你永远不想像这样在px中指定布局。 它不会扩展 - px可以是任何大小。 回到他身边然后得到一个dp号码(dp基本上是1/160英寸)。 用dp设计整个东西。 然后让手机将其转换为px。

    如果你设计像素,它将无法正常工作。 设计物理尺寸(dp),让设备翻译。

    此外,您不能假设导航栏的高度。 在dp和px方面,它可以并且确实在设备之间有所不同。