Android中的Nine-patch图片
16lz
2021-01-26
Nine-patch图片是一种可伸缩的位图图像,当你使用这种图片设置某个view的背景时,Android会自动的调整它的大小来包裹这个view的内容。Nine-patch图片是一个包含额外的1px宽边框的标准PNG图片。它必须以后缀名 .9.png 来保存,并且保存到你的项目的 res/drawable/ 目录下。
刚刚说的额外的1px宽的边框是用来定义这个图片的可拉伸区域和不可拉伸区域的。你通过在边框的左边和上边绘制1px宽的黑线来指出一个可拉伸的区域。你可以指出尽可能大的可伸缩区域:它们的相对长宽将保持相同,因此最大的片段将总是最大的。
你也可以通过绘制右边框和下边框来定义一个可选的可绘制区域。如果一个View设置一个Nine-patch图片作为背景,并且指定这个View的文本,它将会伸缩自己来让所有的文本位于上边框和下边框指定的区域里。
这些线的区别是:左边和上边的线定义了图片的哪些像素可以为拉伸图片而重复。右边和底边的线定义了图片的相对区域来放置View的内容。
Nine-patch图片用左边和上边的线定义图片的可伸展区域,通过右边和下边的线定义图片的可绘制区域。在上面那个图中,灰色的线标志为了拉伸图片而需要重复的区域。下面图中的粉红色矩形定义了view的内容可放置的区域。如果内容不适合这个区域,然后图片就会被拉伸来适应内容。
以上翻译不妥之处还请指教;
官方原文地址:https://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch。
更多相关文章
- android中按钮随单击变换
- Android(安卓)UI设计小知识——按钮背景的制作
- Android加载图片防止OOM
- Android新的网络请求框架volley源码解释及示例
- Android从系统Gallery获取图片具体实现
- 【Android(安卓)开发】:UI控件之 ImageView 实现图片旋转和缩放功
- Android中点击空白区域隐藏软键盘功能实现
- Android图片开源库:最全面、详细的Picasso讲解
- Camera的学习,图片的保存(两种),获取手机图片以及图片信息修改(小的图