欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

制作Nine-Patch图片

程序员文章站 2022-04-19 21:28:11
...

Nine-Patch介绍

Nine-Patch是一种被特殊处理过的png图片,能够指定那些区域可以被拉伸,哪些区域不可以
1、项目有一张气泡样式的图片message_left.png制作Nine-Patch图片
##将这张图片设置为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里添加相应的路径
制作Nine-Patch图片

制作Nine-Patch图片

环境变量

制作Nine-Patch图片
制作Nine-Patch图片
制作Nine-Patch图片检查jdk是否安装成功:同时按win+R之后输入java与javac 出现如下界面就是成功

制作Nine-Patch图片

制作Nine-Patch图片

运行draw9patch.bat

双击打开draw9patch.bat文件----->在导航栏点击File—>Open 9-patch将message_left.png加载进来,如图示制作Nine-Patch图片

左边图片的上边框和左边框部分表示当图片需要拉伸时就拉伸黑点标记的区域,下边框和右边框绘制的部分表示内容会被放置的区域,按住shif键拖动可以进行擦除。绘制完成后点击导航栏File—>Save 9-patch将绘制好的图片进行保存,此时的文件名是message_left.9.png。使用这张图片替代之前的message_left.png图片,重新运行程序

这样当图片需要拉伸时就可以只拉伸指定的区域。

相关标签: AndroidStudio