---@class KLAppearGroupPanel:UIKmlLuaPanelBase ---@field view KLAppearGroupPanelView local KLAppearGroupPanel = class(UIKmlLuaPanelBase) local this = KLAppearGroupPanel ---@type table local togs = {} ---创建时调用一次 function this:Init() togs[E_FashionType.Appear] = self.view.TogAppear togs[E_FashionType.Title] = self.view.TogTitle togs[E_FashionType.TransferRing] = self.view.TogBox togs[E_FashionType.Change] = self.view.TogChange togs[E_FashionType.Render] = self.view.TogRender end ---创建或者刷新界面数据时调用 function this:Refresh() local page = self.args or E_FashionType.Appear local togItem = togs[page] if togItem then GUI:SetTogDefaultThis(togItem) else GUI:SetTogDefaultThis(self.view.TogAppear) end end ---注册UI事件和服务器消息 function this:RegistEvents() GUI:SetToggleOnValueChange(self.view.TogAppear, self, self.TogAppearOnClick) GUI:SetToggleOnValueChange(self.view.TogTitle, self, self.TogTitleOnClick) GUI:SetToggleOnValueChange(self.view.TogBox, self, self.TogBoxOnClick) GUI:SetToggleOnValueChange(self.view.TogChange, self, self.TogChangeOnClick) GUI:SetToggleOnValueChange(self.view.TogRender, self, self.TogRenderOnClick) end function this:TogAppearOnClick(kmlCtrl, eventData, args) if args[1] then if self.curPage == E_FashionType.Appear then return end self.curPage = E_FashionType.Appear GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppearPreview/KLAppearPreviewPanel") GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppear/KLAppearPanel") else GUI:UIPanel_Close("dev/outui/AppearGroup/Panel/KLAppear/KLAppearPanel") end end function this:TogTitleOnClick(kmlCtrl, eventData, args) if args[1] then if self.curPage == E_FashionType.Title then return end self.curPage = E_FashionType.Title GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppearPreview/KLAppearPreviewPanel") GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLTitle/KLTitlePanel") else GUI:UIPanel_Close("dev/outui/AppearGroup/Panel/KLTitle/KLTitlePanel") end end function this:TogBoxOnClick(kmlCtrl, eventData, args) if args[1] then if self.curPage == E_FashionType.TransferRing then return end self.curPage = E_FashionType.TransferRing GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppearPreview/KLAppearPreviewPanel") GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLTransferRing/KLTransferRingPanel") else GUI:UIPanel_Close("dev/outui/AppearGroup/Panel/KLTransferRing/KLTransferRingPanel") end end function this:TogChangeOnClick(kmlCtrl, eventData, args) if args[1] then if self.curPage == E_FashionType.Change then return end self.curPage = E_FashionType.Change GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppearPreview/KLAppearPreviewPanel") GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLSuit/KLSuitPanel") else GUI:UIPanel_Close("dev/outui/AppearGroup/Panel/KLSuit/KLSuitPanel") end end function this:TogRenderOnClick(kmlCtrl, eventData, args) if args[1] then if self.curPage == E_FashionType.Render then return end self.curPage = E_FashionType.Render GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLAppearPreview/KLAppearPreviewPanel") GUI:UIPanel_Open("dev/outui/AppearGroup/Panel/KLRender/KLRenderPanel") else GUI:UIPanel_Close("dev/outui/AppearGroup/Panel/KLRender/KLRenderPanel") end end function this:Close() self.curPage = nil end return this