NinePatchDrawable 九修补程序
1,认识
它表示的是一张.9格式的图片,.9图片可以自动地根据所需的宽/高进行相应的缩放并保证不失真。
文件位置 ︰
res/drawable/filename.xml
文件名用作资源 id。
语法
<?xml version="1.0" encoding="utf-8"?>
<nine-patch
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@[package:]drawable/drawable_resource"
android:dither=["true" | "false"] />
2,各元素属性注解
xmlns:android
字符串。所需。定义 XML 命名空间,必须是
"http://schemas.android.com/apk/res/android".
android:src
可绘制资源。所需。对九修补程序文件的引用。
android:dither
布尔值。启用或禁用位图的抖动,如果位图不具有相同的像素屏幕配置
(例如 ︰ 与 RGB 565 屏幕 ARGB 8888 位图)。
3,代码示例
<?xml version="1.0" encoding="utf-8"?>
<nine-patch xmlns:android="http://schemas.android.com/apk/res/android"
android:dither="false"
android:src="@drawable/a" />
注意:@drawable/a中的a图片就是drawable中a.9.png图片
4,Android 9.png格式图片原理和使用
I 认识
自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向,在界面改变方向后,界面上的图形会因为长宽的变化而产生拉伸,造成图形的失真变形。
Android平台有多种不同的分辨率,很多控件的切图文件在被放大拉伸后,边角会模糊失真,在android平台下使用点九PNG技术,可以将图片横向和纵向同时进行拉伸,以实现在多分辨率下的完美显示效果。
“点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png
draw9patch就是帮助我们制 作.9.PNG格式资源的一个小工具。
9.png格式图片和普通图片相比:
9.png 格式图片是android平台上新创的一种被拉伸却不失真的图片,它与普通png图片相比多了一个像素位的白色区域,该区域只有在图片被还原和制作的时候 才能看到,打包后无法看到,并且图片的总像素会缩小2个像素,比如23X23像素的9.png图片打包后会变成21X21,所以在制作的时候要注意掌握尺 寸,并且在我们制作的9.png时候会发现一个几KB或几十KB的图片会变得非常小,一般只有几百个字节那么大,系统加载起来会更加流畅。
特点:
a,这种格式的图片在android 环境下具有自适应调节大小的能力。
b,允许开发人员定义可扩展区域,当需要延伸图片以填充比图片本身更大区域时,
可扩展区的内容被延展。
c,允许开发人员定义内容显示区,用于显示文字或其他内容
文件位置: res/drawable/xxx.9.png
II 9.png格式图片制作步骤:
(1) 使用 9.png格式图片的制作工具需要下载jdk安装,百度搜索:jdk-6u20-windows-i586,
安装包大小80M左右。然后使用andriod模拟器android-sdk-windows,打开SDK/tools目录下的“draw9patch.bat”文件:
(2)出现弹框如下,
(3)点击“运行”按钮后,出现以下弹框,我们就可以制作.9.png图片了.
(4)将你用PS制作的图片素材,拖到该窗口中,出现如图:
解释:边缘的白色透明框就是上述所讲的所加的像素框
(5) 解释:
1号黑色条位置向下覆盖的区域表示图片横向拉伸时,只拉伸该区域
2号黑色条位置向右覆盖的区域表示图片纵向拉伸时,只拉伸该区域
3号黑色条位置向左覆盖的区域表示图片纵向显示内容的区域
4号黑色条位置向上覆盖的区域表示图片横向显示内容的区域
没有黑色条的位置覆盖的区域是图片拉伸时保持不变(比如,如果图片的
四角为弧形的时候,当图片被任意拉伸时,四角的弧形都不会发生改变)
(6)如果失误多选了部分,可按住shift键,点击鼠标左键去掉黑色条 ;
选择好区域后,点击左上file-》save 9-path,保存图片,后缀名为a.9.png,此时图片效果为:
这个就是原始的.9.png图片,三个边多了3个黑色条,然后去除黑色条,就可以完成这个图片的制作。
(7)去除.9.png图片的黑色条
工具下载地址:
https://yunpan.cn/cxR6u6S8TAtZ7 访问密码 939c
1,用工具工具xUltimate- d9pc-x86,把要去除黑线的图片放到example1\res\drawable-hdpi目录下,然后点击 xUltimate- d9pc.exe,运行,等一两秒,滴答一声就完成了去除黑线。
2,处理好的.9图片在done\example1\res\drawable-hdpi 目录下,把图片复制出来就可以用了,即是.9.png格式的图片又非常美观。