制作Nine-Patch图片
Nine-Patch介绍
Nine-Patch是一种被特殊处理过的png图片,能够指定那些区域可以被拉伸,哪些区域不可以
1、项目有一张气泡样式的图片message_left.png
##将这张图片设置为Linearlayout的背景图片
修改activity_main。xml的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="@mipmap/message_left">
</LinearLayout>
如果android:layout_width="wrap_content"中改为match_parent时整张图片会被均匀拉伸,效果极丑。这时可以用Nine_Patch来进行改善
1、在Android sdk 目录下有一个tools文件夹,找到draw9patch.bat文件,我们是使用它来制作Nine_Patch图片。
如果打开draw9patch.bat之后出现cmd闪退,有可能是jdk不对,打开Androidstudio界面----->File---->otherSetttings---->default project structure----查看默认的jdk路径,如果你使用的是AndroidStudio的内置jdk,那么需要配置的环境变量就是<Android Studio 安装目录>/jre/bin,如果你使用的是自行下载的jdk则自己配置好JAVA_HOME然后在path里添加相应的路径
环境变量
检查jdk是否安装成功:同时按win+R之后输入java与javac 出现如下界面就是成功
运行draw9patch.bat
双击打开draw9patch.bat文件----->在导航栏点击File—>Open 9-patch将message_left.png加载进来,如图示
左边图片的上边框和左边框部分表示当图片需要拉伸时就拉伸黑点标记的区域,下边框和右边框绘制的部分表示内容会被放置的区域,按住shif键拖动可以进行擦除。绘制完成后点击导航栏File—>Save 9-patch将绘制好的图片进行保存,此时的文件名是message_left.9.png。使用这张图片替代之前的message_left.png图片,重新运行程序