PGRData/Script/matrix/xui/xuigoldenminer/grid/XUiItemGrid.lua

62 lines
1.6 KiB
Lua
Raw Normal View History

local XUiItemGrid = XClass(nil, "XUiItemGrid")
--黄金矿工通用道具格子
function XUiItemGrid:Ctor(ui, useItemCb)
self.GameObject = ui.gameObject
self.Transform = ui.transform
self.UseItemCb = useItemCb
XTool.InitUiObject(self)
self.DataDb = XDataCenter.GoldenMinerManager.GetGoldenMinerDataDb()
XUiHelper.RegisterClickEvent(self, self.BtnClick, self.OnBtnClick)
self.GameObject:SetActiveEx(true)
end
--itemColumnXGoldenMinerItemData
function XUiItemGrid:Refresh(itemColumn)
self.ItemColumn = itemColumn
if not itemColumn then
self:SetRImgIconActive(false)
return
end
local itemId = itemColumn:GetItemId()
local iconPath = XGoldenMinerConfigs.GetItemIcon(itemId)
if self.RImgIcon then
self.RImgIcon:SetRawImage(iconPath)
end
self:SetRImgIconActive(true)
end
function XUiItemGrid:SetUseItemActive(isActive)
self.BtnClick.gameObject:SetActiveEx(isActive)
end
function XUiItemGrid:SetRImgIconActive(isActive)
if self.RImgIcon then
self.RImgIcon.gameObject:SetActiveEx(isActive)
end
if self.ImgNotItem then
self.ImgNotItem.gameObject:SetActiveEx(not isActive)
end
end
function XUiItemGrid:GetItemColumn()
return self.ItemColumn
end
function XUiItemGrid:OnBtnClick()
local itemColumn = self.ItemColumn
local itemIndex = not XTool.IsTableEmpty(itemColumn) and itemColumn:GetGridIndex()
if not itemIndex then
return
end
--玩法中使用道具
if self.UseItemCb then
self.UseItemCb(self)
return
end
end
return XUiItemGrid