让图片始终在中心
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-03 23:40:56 |
👁️ 阅读: 2
要让图片始终显示在屏幕中心,可以使用以下方法:
```lua
-- 创建父窗口(作为容器)
local parent = GUI:Win_Create("GMMain", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 获取屏幕尺寸
local screenSize = cc.Director:getInstance():getVisibleSize()
local centerX = screenSize.width / 2
local centerY = screenSize.height / 2
-- 创建图片并设置到中心位置
local image = GUI:Image_Create(parent, "center_image", centerX, centerY, "res/public_win32/1900000610.png")
-- 设置锚点为0.5,0.5(中心对齐)
GUI:setAnchorPoint(image, 0.5, 0.5)
-- 获取图片尺寸并设置位置
local imgSize = GUI:getContentSize(image)
GUI:setPosition(image, centerX, centerY)
```
**关键点说明:**
1. **锚点设置**:`GUI:setAnchorPoint(image, 0.5, 0.5)` 将图片的锚点设置在中心
2. **位置计算**:通过 `cc.Director:getInstance():getVisibleSize()` 获取屏幕尺寸
3. **居中计算**:`centerX = screenSize.width / 2`,`centerY = screenSize.height / 2`
这样图片就会始终显示在屏幕正中心,无论屏幕分辨率如何变化。
← 返回问答库