我希望在Android中为不同的分辨率创建背景图片,因此需要知道ldpi、mdpi、hdpi、xhdpi和xxhdpi的像素值。重要的是,该图片不会模糊。
我已经阅读了关于多屏幕支持的文档,但其中给出的尺寸是以dp为单位而非像素。
我希望在Android中为不同的分辨率创建背景图片,因此需要知道ldpi、mdpi、hdpi、xhdpi和xxhdpi的像素值。重要的是,该图片不会模糊。
我已经阅读了关于多屏幕支持的文档,但其中给出的尺寸是以dp为单位而非像素。
尝试按照以下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
1440
是宽度,2560
是高度。好的,那么分辨率呢? - Shafizadeh屏幕分辨率没有完整的清单,对于ldpi、mdpi、hdpi、xhdpi和xxhdpi,没有固定的像素值。每个Android设备的分辨率可能都不同。如果您想填充所有分辨率,就必须创建太多的图像。如果将它们放在应用程序中,这将使应用程序大小变得巨大。也许更好的方法是使用复合图像作为背景。
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
请注意,我将使用3.0倍缩放率添加xxhdpi图像。
我认为将DP转换为像素在Android Java中相当容易,我使用我创建的以下函数实现:
int getPixels(Context context, float dp) {
return (int) (context.getResources().getDisplayMetrics().density * dp + .5f);
}