一、理论篇
在android开发过程中,为 了避免图片失真,我们会在drawable-hdpi,ldpi,mdpi下放不同分辨率的图片,但是这样处理不但麻烦而且图片资源使得整个项目太大,所以我们需要某些方法来实现图片的拉伸而不失真,而9.png格式的图片正是安卓平台上新创的一种被拉伸却不失真的图片格式。
.9.png(nine patch),相当于把一张png图分成了9个部分,分别为4个角,4条边,以及一个中间区域。4个角是不做拉升的,所以还能一直保持圆角的状态,而2条水平边和垂直边分别只做水平和垂直拉伸,所以不会出现边会被拉粗的情况,只有中间用黑线指定的区域做拉伸。
1、问题由来,需求分析
在屏幕自适应时候,图片拉伸显示失真问题
2、传统实现方法
在drawable-hdpi,ldpi,mdpi下放不同分辨率的图片
3、Android上的解决办法
(1)使用draw9patch工具制作*.9.png图片
(2)按Android中常规使用图片方式使用*.9.png图片
4、需要注意的地方
(1)png图片周围需要留一像素空白,文件名必须为*.9.png
(2)解压APK文件后得到的*.9.png文件,已将周围的空白像素去掉了
9.png图片的不同之处: