设置图片九宫格怎么用 有什么作用
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-03 23:31:52 |
👁️ 阅读: 1
设置图片九宫格使用 `GUI:Image_setScale9Slice(widget, scale9l, scale9r, scale9t, scale9b)` 函数。
**作用:**
让图片在缩放拉伸时,四个角保持不变形,只拉伸中间部分。常用于制作可自适应大小的UI元素,如各种按钮、对话框边框、血条背景等,确保UI在不同分辨率下都能保持美观。
**参数说明:**
- `widget`: 图片控件对象
- `scale9l`: 左边不拉伸区域占图片宽度的比例(0-1)
- `scale9r`: 右边不拉伸区域占图片宽度的比例(0-1)
- `scale9t`: 上边不拉伸区域占图片高度的比例(0-1)
- `scale9b`: 下边不拉伸区域占图片高度的比例(0-1)
**使用示例:**
```lua
-- 先创建父窗口
local parent = GUI:Win_Create("MainWin", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 创建图片控件
local image = GUI:Image_Create(parent, "my_image", 100, 100, "")
GUI:Image_loadTexture(image, "res/public/1900000610.png")
-- 设置九宫格:左右各保留20%宽度不拉伸,上下各保留20%高度不拉伸
GUI:Image_setScale9Slice(image, 0.2, 0.2, 0.2, 0.2)
-- 现在拉伸图片时,四个角会保持原样
GUI:setContentSize(image, 300, 200)
```
**注意事项:**
1. 比例值范围是0-1,表示占原图宽高的百分比
2. 除了`Image`控件,`Layout`、`ListView`、`ScrollView`等容器控件也有对应的九宫格设置函数
3. 设置后图片才能实现真正的自适应大小而不失真
← 返回问答库