Android图片适配

在UI设计图片时,对于主流的像素密度(mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi)应按照2:3:4:6:8比例进行缩放,例如一个启动图片ic_launcher.png,它在各个像素密度文件夹下大小为:

                                                                             mdpi(中) 48 X 48

                                                                             hdpi(高) 72 X 72

                                                                        xhdpi(超高) 96 X 96

                                                                  xxhdpi(超超高) 144 X144

                                                                xxxhdpi(超超超高) 192 X192

   当应用需要使用图片时,会根据当前的手机的屏幕像素密度到对应的文件夹中获取图片。提供一整套图显然可以基本解决图片适配问题,但是这样做会是apk的大小变大,美工需要切多套尺寸的图,增加了工作量。那么我们可不可以提供一套图呢?对于这个问题,我们首先要了解一下Android应用加载图片资源的过程,根据当前的手机的屏幕像素密度到对应的文件夹中获取图片,如果文件夹中没有图片或者不存在对应的文件夹,就会从其它像素密度的文件夹中获取图片,并且按照2:3:4:6:8的比例缩放。例如,假设当前的手机像素密度为xhdpi,而图片只存放在xxxhdpi文件夹中,图片的大小为192 X 192,那么就会按比例对图片进行压缩,最终使用的图片大小为96 X 96。当然对图片进行缩放,肯定是要损耗一些时间的。

      理论上,只切一套屏幕像素密度的图片是可行的,但具体切哪种屏幕像素密度?原则上越高越好,同时结合市场主流屏幕像素密度。

   另外,有时候有些图片的大小需要动态地变化,比如在聊天界面中消息的气泡背景,需要根据消息的长宽来拉伸或缩放,这是我们需要使用.9图片。.9图片的左边和顶边的两条黑线表示可以拉伸的区域,右边和底边的两条黑线共同构成了内边距。

更多了解.9图片的使用https://blog.csdn.net/sunbinkang/article/details/77331718

你可能感兴趣的:(Android图片适配)