APP开发实战84-点9图介绍

2.3点9图介绍

2.3.1 简介

AndroidAPP开发中,屏幕尺寸的多样性导致的界面适配,是让开发者非常头疼的问题:

很多APP内置的图片在不同尺寸屏幕的设备上被放大拉伸后,边角会模糊失真,十分丑陋;针对不同的分辨率内置多套图片,又增大了APP安装包的大小。

Google专门制作了一种.9.PNG格式图片来解决这个问题:这种格式的图片能按照设定来拉伸特定区域,而不是整体放大或缩小,从而保证了图片在各个分辨率的屏幕上都可以完美展示,同时可以把显示内容区域的位置标示清楚,这种图也被称作9Patch图。

这种格式图片相对于普通PNG格式的图片主要区别在于四周增加左、上、右、下四条带有一个像素的黑实线,分别表示含义如下:

左边线条—当图片进行纵向拉伸时,由此线条从图片左边水平位移到图片右边所形成的区域都是可以进行纵向拉伸的,此区域外则不进行拉伸,保留原来效果。

上边线条—当图片进行水平拉伸时,由此线条从图片上边垂直位移到图片下边所形成的区域都是可以进行横向拉伸的,此区域外则不进行拉伸,保留原来效果。

右边线条—控制图片填充内容的垂直padding留白。

下边线条—控制图片填充内容的水平padding留白。

9png图片一般用在纯色且需要拉伸的地方,如聊天程序的对话框(字数不同,对话框的大小也不同)、按钮和箭头等。

2.3.2 制作工具

Android在sdk包中提供了绘制9Patch图的工具, 具体路径如下: sdk\tools\draw9patch.bat

Photoshop制作方式:

先输出普通的png资源,然后扩大画布大小,上下左右各空出一个像素,再用一个像素的铅笔工具(颜色选择纯黑色),上下左右分别画点就可以了,保存的时候注意把后缀修改为.9.png。

最外围的一圈像素必须要么是纯黑色,要么是透明,一点点的半透明的像素都不可以有,比如说99%的黑色或者是1%的投影都不可以有。

2.3.3 注意事项

(1).9.png只是针对图片拉伸而言的,包括单独的横线拉伸,单独的纵向拉伸和同时横向和纵向拉伸,对于图片压缩没有效果。

(2).9.png可以指定图片上填充内容(包括文字和非文字的布局等)的区域,非填充区域即可理解成div中的padding留白。

(3)文件的后缀名必须是.9.png,不能是.png或者是.9.png.png,这样的命名都会导致编译失败。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是DPI、PPI? DPI(Dots Per Inch)是测量空间点密度的单位,最初应用于打印技术中,它表示每...
    读品走思阅读 9,529评论 0 5
  • Android 是移动设备中屏幕种类最为繁多的设备之一,大到TV、中到iPad、Phone、小到手表等。为了进行U...
    Android_YangKe阅读 4,976评论 3 7
  • 无聊ing...�封装个省市区三级联动选择器的小demo吧。上家公司的三级地区选择器的数据是一次性通过网络请求就能...
    APP叫我取个帅气的昵称阅读 10,455评论 22 4
  • 一见如故,不觉情陷。 一世谈笑,不忘流年。 一品红酒,不负诺言。 一抔深梦,不忘天眷。
    奈何薇薇阅读 1,742评论 0 5
  • 近段听了五节通过县里评比胜出的五位教师的同课异构,课题是县里规定的《线段、射线、直线》。本课思路是比较清晰的:首先...
    回归本心阅读 5,183评论 0 0

友情链接更多精彩内容