android - 我应该向 UI 开发人员询问什么图像尺寸?

标签 android android-layout android-imageview

我有一个具有这些属性的 ImageView:

   android:layout_width="match_parent"
   android:layout_height="160dp"

UI 开发人员询问我想要的图像大小(以 px 为单位)。我应该问什么尺寸?我应该为不同的设备要求不同的尺寸吗?

注意

我没有具有特定高度和宽度的 ImageView。我的 ImageView 宽度是 match_parent 而不是特定宽度。

所有答案都说我应该使用转换器,如何将 match_parent 转换为 px

根据答案,我应该问六张图片,不是吗?

最佳答案

您应该为您的 UI 开发人员提供以像素为单位的最高屏幕密度,然后自行调整以降低密度。

通常,Android 应用程序将支持最小屏幕密度 ldpi 和最大屏幕密度 xxxhdpi

第 1 步:如果您希望图像尺寸为 160 x 160 dp,则为 UI 开发人员提供与最大屏幕密度相关的最大图像尺寸。

160 x 4 = 640x640 px(为什么要乘以4?后面会解释)

第 2 步:根据屏幕密度将图像 640x640 px 缩放到更小的尺寸

  • ldpi:160 x 0.75 = 120x120 像素
  • mdpi:160 x 1 = 160x160 像素
  • hdpi:160 x 1.5 = 240x240 像素
  • xhdpi:160 x 2 = 320x320 像素
  • xxhdpi:160 x 3 = 480x480 像素
  • xxxhdpi:160 x 4 = 640x640 像素

提示:找到您的图像尺寸对应于 mdpi 密度屏幕(称为 base density1X density)然后缩放到其他密度以下公式

Density buckets

更新: 来自 https://material.io/tools/devices/ ,基本密度屏幕的屏幕尺寸为 360x640 px。因此,在 1X 密度屏幕上,您的 ImageView 大小将为 360x160 px

ldpi: 270x120 px 
mdpi: 360x160 px
hdpi: 540x240 px
xhdpi: 720x320 px
xxhdpi: 1280x480 px
xxxhdpi: 1440x640 px

关于android - 我应该向 UI 开发人员询问什么图像尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51627488/

相关文章:

android - 禁用键盘上的特定键

android - 如何在小部件右侧创建没有向下三角形的android微调器

android - 方向更改时的 ImageView - Drawable 忽略 setBounds 并返回到原始状态

android - 删除图像 ListView 中不必要的空格

android - 勾选 android 切换按钮

android - Android 和 iOS 上的隐私相关权限有多慷慨?

java - 我需要一个 SQL 查询来找到你可以用一组字母组成的所有单词,包括最多两个空白 block

java - "file:///"和 "file://"之间的区别

android - 如何通过 GCM 向 Java EE Web 应用程序发送通知?

android - 在谷歌地图项目中膨胀类 fragment 时出错