android 图片捏合_Android

   从图片中来看,当按钮内容不够或太大时,Android会自动缩放整张图片,以保证背景图片能覆盖整个按钮。但这种缩放整张图片的效果可能并不是很好。有时候我们需要的情况是只想缩放图片中某个部分,这样才能保证按钮的视觉效果。

        为了实现只缩放图片中某个部分的效果,我们需要借助9Patch图片来实现。9Patch图片是一种特殊的PNG图片,这种图片以.9.png结尾,它在原始的图片四周各添加宽度为1像素的线条,这4条线决定了图片的缩放规则、内容显示规则。

(9Patch为Android SDK自带的工具,该工具位于Android SDK安装路径下的tools目录下的draw9patch.bat文件)


draw9patch.bat之后,通过该工具主菜单上的“File-Open 9-Pacth”菜单项打开一张PNG图片,这里我们以ic-launcher图片为例

android 图片捏合_缩放_02

首先,上一张未编辑状态的图片,我们可以发现图片周围的灰色区域,那就是我们用来产生上面所说的1像素线条的区域。



左侧和上侧的灰色区域不放,然后左右或上下移动鼠标,来产生线条,如下图所示

android 图片捏合_Android_03

 左侧和上侧黑色线条对应的部分就是我们想要缩放的区域


同理,我们通过相同的方发来定义图片需要显示但不缩放的区域,如下图所示

android 图片捏合_android_04

右侧和下侧黑色线条的对应部分就是我们需要显示但不缩放的区域


最后我们将这张图片做为按钮背景,测试一下效果,效果如下

android 图片捏合_android 图片捏合_05

      

android 图片捏合_Android_06

这是使用9Patch编辑过后的按钮背景图片        这是未使用9Patch编辑过的按钮背景图片