81 lines
2.2 KiB
Lua
81 lines
2.2 KiB
Lua
|
local XUiGridTemplateSave = XClass(nil, "XUiGridTemplateSave")
|
|||
|
|
|||
|
function XUiGridTemplateSave:Ctor(ui)
|
|||
|
self.GameObject = ui.gameObject
|
|||
|
self.Transform = ui.transform
|
|||
|
|
|||
|
XTool.InitUiObject(self)
|
|||
|
self:AutoAddListener()
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:Init(parent)
|
|||
|
self.Parent = parent
|
|||
|
self:SetSelect(false)
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:RegisterClickEvent(uiNode, func)
|
|||
|
if func == nil then
|
|||
|
XLog.Error("XUiGridTemplateSave:RegisterClickEvent函数参数错误:参数func不能为空")
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
if type(func) ~= "function" then
|
|||
|
XLog.Error("XUiGridTemplateSave:RegisterClickEvent函数错误, 参数func需要是function类型, func的类型是" .. type(func))
|
|||
|
end
|
|||
|
|
|||
|
local listener = function(...)
|
|||
|
func(self, ...)
|
|||
|
end
|
|||
|
|
|||
|
CsXUiHelper.RegisterClickEvent(uiNode, listener)
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:AutoAddListener()
|
|||
|
self:RegisterClickEvent(self.BtnClick, self.OnBtnClick)
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:OnBtnClick()
|
|||
|
self.Parent:OnGridClick(self, self.Name, false, self.Index)
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:SetSelect(status)
|
|||
|
self.PanelSelect.gameObject:SetActiveEx(status)
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:CheckCoverSave()
|
|||
|
return self.HomeRoomData ~= nil
|
|||
|
end
|
|||
|
|
|||
|
function XUiGridTemplateSave:Refresh(homeRoomData, collectCfg, isDefaultSelect, index)
|
|||
|
self:SetSelect(false)
|
|||
|
self.HomeRoomData = homeRoomData
|
|||
|
self.CollectCfg = collectCfg
|
|||
|
self.Index = index
|
|||
|
|
|||
|
local isHave = homeRoomData ~= nil
|
|||
|
self.Name = isHave and self.HomeRoomData:GetRoomName() or collectCfg.DefaultName
|
|||
|
self.PanelTemplate.gameObject:SetActiveEx(homeRoomData ~= nil)
|
|||
|
self.PanelTemplateNone.gameObject:SetActiveEx(homeRoomData == nil)
|
|||
|
|
|||
|
self.TxtName.text = self.Name
|
|||
|
if isDefaultSelect then
|
|||
|
self.Parent:OnGridClick(self, self.Name, true, self.Index)
|
|||
|
end
|
|||
|
|
|||
|
if not isHave then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
self.HomeRoomData:GetRoomPicture(function(texture)
|
|||
|
if texture then
|
|||
|
self.RImgIcon.texture = texture
|
|||
|
else
|
|||
|
if isHave then
|
|||
|
local imgPath = self.CollectCfg.DefaultIcon
|
|||
|
self.RImgIcon:SetRawImage(imgPath, nil, false)
|
|||
|
end
|
|||
|
end
|
|||
|
end)
|
|||
|
end
|
|||
|
|
|||
|
return XUiGridTemplateSave
|