【问题标题】:How to convert pixels into DP for android layout?如何将像素转换为 DP 以进行 android 布局?
【发布时间】:2015-12-22 15:03:04
【问题描述】:

我有 psd 文件来开发 android 布局。如何根据给定的psd 使布局可扩展,并将pixel 设置为pixel。我可以使用标尺来计算 psd 中对象的 height 和 width,但是如何在 Android xml 中的 dp 中放大。 ?

任何帮助都将是可观的

【问题讨论】:

  • 这里是理解dp-px-sp转换的统一指南stackoverflow.com/questions/2025282/…
  • 您需要注意的是 dp 是依赖于设备的,即使 dp 对它们来说都是相同的,它们看起来也会有所不同
  • 其实我理解转换但我该如何应用它?根据您的说法,我首先需要弄清楚设备类型(mdpi/xdpi/xhdpi),然后转换高度和宽度(从 psd 以像素为单位)并将其转换为设备类型并在布局中应用
  • “我怎样才能使布局根据给定的 psd 可缩放和像素到像素。”请不要。它在 Android 上不起作用。在 iOS 上,您可以在 iPhone 5 上打开应用程序抽屉并找到 9 个图标。然后,您可以在配备 Retina 显示屏的 iPad 上执行相同操作,当您打开其应用程序抽屉时,您会再次找到 9 个图标。但是Android的UI指南非常明确,平板电脑的布局不应该只是手机的放大版。如果您尝试在 Android 上做同样的事情,您的 Android 用户会在评论中将您钉在十字架上。
  • @StephanBranczyk 那我该怎么办?

标签: android android-layout android-activity photoshop psd


【解决方案1】:

将像素转换回 dp 并在您的 xml 文件中使用它。要将像素转换为 dp,您可以通过代码或使用诸如 http://androidpixels.net/ 之类的工具来完成

通过代码,您可以这样做:

float ht_px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
ht, getResources().getDisplayMetrics());

【讨论】:

  • 我不知道这个评论是否有意义,但如果我缩小并放大 psd 文件会怎样,因为在这种情况下,您将有不同的像素高度和宽度。在这种情况下我应该怎么做?
  • 你应该只在文件为原始大小时才取尺寸并将其放入xml..其余一切由平台处理
  • 我也遇到了同样的问题,所以我检查了 psd 中给出的按钮的尺寸,即93 像素。然后我使用该工具转换 xxhdpi 设备的值,即 nexus5。我得到的值是 33.3dp,不能缩放以适应屏幕。该值适合屏幕或给定 psd 为 50dp 我该怎么办?
猜你喜欢
  • 2011-06-04
  • 2021-05-01
  • 2019-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-19
  • 2013-05-04
相关资源
最近更新 更多