关于Android xxhdpi xhdpi hdpi的理解

文章为博主原创,转载请标明出处

关于Android xxhdpi xhdpi hdpi的理解

对于Android适配,目前主流机型分辨率为1920x1080,1280x720,800x480等,平时开发中适配也主要适配这三个分辨率,但是以前总是有个疑问,美工出来的图,把切图放到哪个文件夹中,一般都是1920的XXHDPI,1280的XHDPI,800的HDPI,虽然这样没什么问题,但是总觉得不搞明白心里不舒服。然后我让美工出了一张1920的图,和1280的图,用PxCook切图。PxCook里面有个标注选项可以选择是哪个DPI,然后我就发现:
  • 美工的效果图尺寸和dpi没有直接的关系,之所以有上述习惯,是因为市面Android手机本身就是这么一个规定

但是,到底是什么决定着dpi呢,当用PxCook对同一张图做标注的时候,选择不同的DPI同样是300px,用dp做单位的话,从HDPI到XXHDPI,依次为100dp,150dp,200dp,也就是说同一张图,像素密度(dpi)不一样,实际的大小也不一样。

这是从Google官网截下来的图

不同DPI和像素的对应关系

然而,前面已经提到,目前市面上DPI为480的,一般都是1920x1280的分辨率,DPI为320的一般都是1280x720的分辨率,所以在开发中,如果是1920x1280的效果图,切出来的图放在xxhdpi,其他的同理。

如果应用中,有一套XXHDPI的切图和一套HDPI的切图,当运行在MDPI的设备上,那么Android则会把HDPI里面的切图进行处理并显示,也就是,如果对应HDPI的文件夹内没有需要的资源,那么就会在差别最小的文件夹内获取资源。

如果应用中只有一套XXHDPI的切图,那么在XHDPI,HDPI中都会进行相应的缩放并且显示

  • 理想情况下,就目前市面手机分布趋势,美工出800x480,1280x720,1920x1080三套图,放在HDPI,XHDPI,XXHDPI中,则图片适配问题就可以解决。

  • 至于其他的适配问题,比如边缘的margin,控件的padding,则可以用values-xxdpi,values-xdpi,在对应的dimens.xml中,item名称一样,数值不一样,不同的设备将会自动在不同的dimens获取数值,得到最佳适配效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值