14

我想在 Android 中为不同的分辨率创建背景图像。所以我需要 ldpi、mdpi、hdpi、xhdpi 和 xxhdpi 的值(以像素为单位)。重要的是图像不会模糊。

我已经阅读了有关多屏幕支持的文档,但是 dp 中有大小而不是像素。

4

5 回答 5

71

尝试按照以下各种设备屏幕分辨率的 android 图标图形大小参考。

                            ldpi     mdpi     hdpi     xhdpi    xxhdpi     xxxhdpi
Launcher And Home           36*36    48*48   72*72    96*96    144*144    192*192
Action Bar 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                  320*426  320*470 480*640  720*1280 1080*1920  1440*2560
于 2013-11-09T11:09:31.470 回答
9

没有完整的屏幕分辨率列表,ldpi、mdpi、hdpi、xhdpi 和 xxhdpi 没有固定的像素值。每个安卓设备可能有不同的分辨率。如果要填充所有分辨率,则必须创建太多图像。如果你把它们放在你的应用程序中,它会使应用程序变得巨大。也许更好的方法是使用合成图像作为背景。

于 2013-11-09T11:20:49.187 回答
8

根据android文档

mdpi是基线大小

在此处输入图像描述

我们可以用它来测量所有其他比例,这意味着如果 mdpi(比例 1)等于 1 xhdpi(比例 2)应该等于 2,比例值中的多重 mdpi 大小

所有尺寸宽度 x 高度(以像素为单位)

xxxhdpi: 1280x1920 px  // 4x
xxhdpi : 960x1440 px   // 3x
xhdpi  : 640x960 px    // 2x
hdpi   : 480x800 px    // 1.5 x at least 480x720  
mdpi   : 320x480 px    // baseline = 1x
ldpi   : 240x360 px    // .75 x

** 注意我将 xxhdpi 与 3.0x 比例添加到图像*

于 2015-09-02T13:50:26.610 回答
7
  • xhdpi: 640x960 像素
  • hdpi: 480x800 像素
  • mdpi:320x480 像素
  • ldpi:240x320 像素
于 2014-03-17T21:43:46.733 回答
0

我认为在andorid java中将DP转换为像素相当容易我用我创建的这个函数来实现这个

int getPixels(Context context, float dp) {
    return (int) (context.getResources().getDisplayMetrics().density * dp + .5f);
}

希望这对人们有所帮助,并请分享您对此的看法,因为我希望尽可能准确地进行此转换,谢谢

于 2018-08-08T08:29:36.453 回答