Android 中的 Nine-Patch 图像是一个特殊的可拉伸图像格式,文件扩展名为 .9.png
。这种格式允许开发者定义图片中的可拉伸和不可拉伸区域,从而在不同尺寸和内容大小的情况下保持图形界面元素的清晰度和比例正确性。
Nine-Patch 图像得名于其工作原理:通过在原图像四周增加1像素宽的黑线(在编辑工具中可见,但实际显示时不会显示为黑色),开发人员可以指定4个边上的拉伸区域:
- 左侧黑线定义了水平方向上哪些像素区域可以在宽度上拉伸。
- 上侧黑线定义了垂直方向上哪些像素区域可以在高度上拉伸。
- 右下角的像素如果被涂黑,则表示内容区域也可以相应地自动缩放以适应内部文本或组件的内容大小。
在 Android 开发中,Nine-Patch 图像主要用于背景和其他需要根据内容大小动态调整的 UI 元素,例如按钮、对话框背景、列表项背景等。使用 Nine-Patch 图片的优势在于它能够保证图片在不同尺寸的屏幕上保持高质量的显示效果,同时减少了为各种屏幕尺寸制作多个不同大小图片的工作量。Android SDK 自带了一个名为 Draw 9-Patch 的工具,可以帮助开发者创建和编辑 Nine-Patch 图像。