function ItemTips.CreateEquipPanel(data, itemData, isWear, panelInsertIndex)
if not data or not itemData then
return
end
if SL:GetMetaValue("WINPLAYMODE") then
isWear = false
end
ResetDescParam()
ItemTips.item
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-08 12:12:10 |
👁️ 阅读: 0
你的代码中,序列帧 `frames` 是创建在 `ItemTips._PList` 这个父节点上的,而不是 `ListBg` 上。这会导致序列帧的位置和大小调整不准确,因为它没有直接关联到当前提示面板的容器 `ListBg`。
你需要将序列帧创建在 `ListBg` 上,并基于 `ListBg` 的大小来设置位置和尺寸。以下是修改后的代码段:
```lua
-- 在创建ListBg后,创建序列帧并设置其属性
local ext = {
count = 12,
speed = 100,
loop = -1,
finishhide = 1,
}
-- 将序列帧创建在ListBg上,而不是ItemTips._PList
local frames = GUI:Frames_Create(ListBg, "frames", 0, 0, "res/xixi/xuliezhen/", ".png", 1, 12, ext)
GUI:setAnchorPoint(frames, 0, 0)
GUI:setPosition(frames, -1, -1) -- 根据需求调整偏移
local tipssize = GUI:getContentSize(ListBg)
GUI:setContentSize(frames, tipssize.width + 2, tipssize.height + 2)
GUI:setLocalZOrder(frames, 9999)
```
这样修改后,序列帧会以 `ListBg` 为父节点,其位置和大小会根据当前提示面板的尺寸正确调整。注意,`GUI:Frames_Create` 的第一个参数现在是 `ListBg`,确保它附着在正确的容器上。
你的代码中,序列帧 `frames` 是创建在 `ItemTips._PList` 这个父节点上的,而不是 `ListBg` 上。这会导致序列帧的位置和大小调整不准确,因为它没有直接关联到当前提示面板的容器 `ListBg`。
你需要将序列帧创建在 `ListBg` 上,并基于 `ListBg` 的大小来设置位置和尺寸。以下是修改后的代码段:
```lua
-- 在创建ListBg后,创建序列帧并设置其属性
local ext = {
count = 12,
speed = 100,
loop = -1,
finishhide = 1,
}
-- 将序列帧创建在ListBg上,而不是ItemTips._PList
local frames = GUI:Frames_Create(ListBg, "frames", 0, 0, "res/xixi/xuliezhen/", ".png", 1, 12, ext)
GUI:setAnchorPoint(frames, 0, 0)
GUI:setPosition(frames, -1, -1) -- 根据需求调整偏移
local tipssize = GUI:getContentSize(ListBg)
GUI:setContentSize(frames, tipssize.width + 2, tipssize.height + 2)
GUI:setLocalZOrder(frames, 9999)
```
这样修改后,序列帧会以 `ListBg` 为父节点,其位置和大小会根据当前提示面板的尺寸正确调整。注意,`GUI:Frames_Create` 的第一个参数现在是 `ListBg`,确保它附着在正确的容器上。
← 返回问答库