2012-10-23 77 views
73

我正在创建可在所有Android设备上运行的应用程序。我想为我的应用程序创建xhdpi图形。我的应用程序是全屏。我在创建图形时感到困惑。任何人都可以用像素来告诉我背景图像的最佳尺寸。Android:支持所有设备的背景图像大小(以像素为单位)

例如:

  • xhdpi:720x1280 PX
  • HDPI:480x800的像素
  • MDPI:为320x480像素
  • LDPI:240×320像素

推荐我最好尺寸,其将出现在所有设备上。因为我的图形是我的应用程序的核心。

我希望每台设备都能得到最想要的图像。 Android将不参与压缩或扩展图像。

+3

阅读Android文档的Android多屏幕支持,它们为用户界面提供标准 – RajeshVijayakumar

+0

使用这一个解决方案,这对所有新旧设备都是最好的。 http://stackoverflow.com/a/40255870/2489061 – Umar

回答

3

我环顾四周互联网为这些密度为方形的图像尺寸正确,但无法找到任何可靠的。

如果它的任何安慰,指Veerababu Medisetti's answer我用这些尺寸为 :)

xxxhdpi: 1280x1280 px 
xxhdpi: 960x960 px 
xhdpi: 640x640 px 
hdpi: 480x480 px 
mdpi: 320x320 px 
ldpi: 240x240 px 
+0

使用这一个解决方案,这对所有新旧设备都是最好的。 http://stackoverflow.com/a/40255870/2489061 – Umar

33

Android设备矩阵

      ldpi  mdpi  hdpi xhdpi xxhdpi  xxxhdpi 
Launcher And Home   36*36 48*48 72*72 96*96 144*144  192*192 
Toolbar And Tab    24*24 32*32 48*48 64*64 96*96  128*128 
Notification    18*18 24*24 36*36 48*48 72*72  96*96 
Background     240*320 320*480 480*800 768*1280 1080 *1920 1440*2560 

(对于好方法减去工具栏大小从总高度背景屏幕和屏幕设计图形)

更多帮助(This链路包括片也可以):

https://design.google.com/devices/

Android原生的图标(推荐)你可以改变这些图标programmatically颜色。 https://design.google.com/icons/

1

我的理解是,如果你使用View对象(如应该如:android:windowBackground)Android将自动调整图像到正确的尺寸。问题是太多的缩放可能会导致工件(上下缩放)和模糊。由于市场上的各种分辨率和外观比例,不可能为每个屏幕创建“完美”的适合度,但是您可以尽力确保只需进行一点缩放即可,从而减轻不必要的副作用。因此,我会做的是:

  • 保持到3:4:6:8:12:六点广义密度(LDPI,MDPI,HDPI等)16之间的缩放比率。
  • 您不应该为您的UI元素包含xxxhdpi元素,此分辨率仅用于升级启动器图标(仅用于mipmap文件夹)... You should not use the xxxhdpi qualifier for UI elements other than the launcher icon. ...虽然例如。在三星边缘7呼叫getDisplayMetrics().density返回4(xxxhdpi),所以也许这个信息是过时的。
  • 然后看看市场上的新手机型号,找到具有代表性的手机型号。假设新的google像素是Android手机的很好代表:它具有441 dpi的1080 x 1920分辨率和4.4 x 2.5 inches的屏幕尺寸。然后从the android developer docs

    • LDPI(低)〜120DPI
    • MDPI(介质)〜160dpi
    • HDPI(高)〜240dpi
    • xhdpi(超高)〜320dpi
    • xxhdpi(超超高压)〜480dpi
    • xxxhdpi(特超超高压)〜640dpi

    这对应于xxhdpi屏幕。从这里我可以将这些1080 x 1920比例缩小(3:4:6:8:12)的比例。

  • 我也可以承认缩减采样通常是一种简单的缩放方式,因此我可能希望在我的apk中捆绑稍微超大的位图(注意:更高的内存消耗)。再次假设像素屏幕的宽度和高度是代表性的,我会将1080x1920放大480/441倍,使我的最大分辨率背景图像保持在约。 1200x2100,然后按3:4:6:8:12缩放。请记住,您只需为位图文件(.png,.jpg或.gif)和Nine-Patch文件(.9.png)提供密度特定的绘图。如果您使用XML文件来定义可绘制资源(例如形状),只需将一个副本放在默认的可绘制目录中即可。
  • 如果您曾经需要容纳真正的大或奇数高宽比,请为这些创建特定的文件夹,例如使用标记。 sw,long,large
  • 而且不需要两次绘制背景。因此,设置的样式与<item name="android:windowBackground">@null</item>
1

GIMP tool正是你需要创建不同的像素分辨率的设备的图像内容。

遵循以下步骤:

  1. 公开赛在GIMP工具现有的图像。
  2. 转到“图像”菜单,然后选择“缩放图像...“
  3. 使用下面的像素尺寸,您需要:

    xxxhdpi:1280x1920像素

    xxhdpi:960x1600像素

    xhdpi:640×960像素

    华电国际:480×800像素

    MDPI :320x480 px

    ldpi:240x320 px

  4. 然后从“文件”菜单中“导出”图像。

相关问题