c1_lua/lua/app/ui/bag/bag_main_ui.lua
2025-10-27 15:23:43 +08:00

98 lines
2.9 KiB
Lua

local BagMainUI = class("BagMainUI", BaseUI)
function BagMainUI:isFullScreen()
return false
end
function BagMainUI:getPrefabPath()
return "assets/prefabs/ui/bag/bag_main_ui.prefab"
end
function BagMainUI:onPressBackspace()
self:closeUI()
end
function BagMainUI:ctor(parmas)
end
function BagMainUI:onLoadRootComplete()
local uiMap = self.root:genAllChildren()
uiMap["bag_main_ui.bg.close_btn"]:addClickListener(function()
self:closeUI()
end)
self.titleTx = uiMap["bag_main_ui.bg.title_tx"]
self.btnTxs = {I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_4), I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_16)}
-- self.pageBtns = {}
-- self.pageBtnTxs = {}
-- self.pageBtnLocks = {}
-- self.pageRedImgs = {}
-- for i = 1, 2 do
-- self.pageBtns[i] = uiMap["bag_main_ui.bg.btns.page_btn_" .. i]
-- self.pageBtnTxs[i] = uiMap["bag_main_ui.bg.btns.page_btn_" .. i .. ".text"]
-- self.pageBtnLocks[i] = uiMap["bag_main_ui.bg.btns.page_btn_" .. i .. ".lock_img"]
-- self.pageRedImgs[i] = uiMap["bag_main_ui.red_node.red_img_" .. i]
-- -- if self.pageBtnLocks[i] then
-- -- self.pageBtnLocks[i]:setActive(not self:getIsOpen(i))
-- -- end
-- self.pageBtns[i] :addClickListener(function()
-- if not self:getIsOpen(i) or self.page == i then
-- return
-- end
-- self.page = i
-- self:onRefresh()
-- end)
-- end
self.scrollrect = uiMap["bag_main_ui.bg.scrollrect"]
self.scrollRectComp = uiMap["bag_main_ui.bg.scrollrect"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.SCROLL_RECT_BASE)
self.scrollRectComp:addInitCallback(function()
return GConst.TYPEOF_LUA_CLASS.REWARD_CELL
end)
self.scrollRectComp:addRefreshCallback(function(index, cell)
cell:refreshByEntity(self.list[index])
cell:addClickListener(function()
ModuleManager.TipsManager:showRewardTips(self.list[index]:getId(), self.list[index]:getType(), cell.baseObject, nil, nil, true)
end)
end)
self.scrollRectComp:clearCells()
self:bind(DataManager.BagData.ItemData, "dirty", function()
self:onRefresh()
end)
end
function BagMainUI:onRefresh()
self:initList()
-- self:refreshPageBtn()
self:refreshScrollrect()
self.titleTx:setText(I18N:getGlobalText(I18N.GlobalConst.BAG_DESC_1))
end
function BagMainUI:initList()
self.list = DataManager.BagData:getItemList()
end
-- 刷新标签红点
-- function BagMainUI:refreshPageBtn()
-- for i = 1, 2 do
-- self.pageBtns[i]:setActive(false)
-- if self.page == i then
-- self.pageBtns[i]:setSprite(GConst.ATLAS_PATH.COMMON, "common_tab_1")
-- self.pageBtnTxs[i]:setText(self.btnTxs[i])
-- else
-- self.pageBtns[i]:setSprite(GConst.ATLAS_PATH.COMMON, "common_tab_2")
-- self.pageBtnTxs[i]:setText("<color=#72778C>" .. self.btnTxs[i] .. "</color>")
-- end
-- -- self.pageRedImgs[i]:setActive(self.heroEntity:showRedPoint(i))
-- self.pageRedImgs[i]:setActive(false)
-- end
-- end
function BagMainUI:refreshScrollrect()
self.scrollRectComp:refillCells(#self.list)
end
return BagMainUI