local UIGuildBasePanel = UIViewClass() function UIGuildBasePanel:OnOpened(context) self:RegistSystemEvent(EventID.UI_CloseAndRecoverView, self.OnCloseAndRecoverView) UIUtils.SetLabelText(self.UITemplateTitlePanel.lab_Title, Const_IDS.IDS_Guild_FunctionName) self.toggles_Guild = self.group_LeftBtn.toggles_Group if not MDL.Guild.IsHasGuild() then UTL.Toggle.InitToggleGroupByIDS(self.toggles_Guild, "txt",{Const_IDS.IDS_GuildApply_PageTitle, Const_IDS.IDS_GuildCreate_PageTitle}) else UTL.Toggle.InitToggleGroupByIDS(self.toggles_Guild, "txt",{Const_IDS.IDS_GuildMainpage_PageTitle, Const_IDS.IDS_GuildMember_PageTitle, Const_IDS.IDS_Guild_GuildTask2, Const_IDS.IDS_GuildWelfareTitle, Const_IDS.IDS_Activity, Const_IDS.IDS_Guild_Building}) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Guild_MainPage_Target, self.RefreshGuildMainPageRedpoint) self:RefreshGuildMainPageRedpoint(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Guild_MainPage_Target)) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Guild_Member, self.RefreshGuildMemberRedpoint) self:RefreshGuildMemberRedpoint(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Guild_Member)) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Guild_Task, self.RefreshTaskRedpoint) self:RefreshTaskRedpoint(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Guild_Task)) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Guild_Welfare, self.RefreshGuildWelfareRedpoint) self:RefreshGuildWelfareRedpoint(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Guild_Welfare)) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Guild_Activity, self.SetGuildWarRedPoint) self:SetGuildWarRedPoint(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Guild_Activity)) end if context then --可能是压栈重新打开的界面,这个时候被踢出公会了,选不到对应的页签 if MDL.Guild.IsHasGuild() == false then self.toggles_Guild:SelectIndex(0) else self.toggles_Guild:SelectIndex(context.selectIndex or 0) if context.selectIndex and context.selectIndex ~= 0 then MDL.Guild.GetGuildInfoReq() end end else self.context = {} self.toggles_Guild:SelectIndex(0) end UIUtils.SetActive(self.bg_Bottom, not MDL.Guild.IsHasGuild()) UIUtils.SetActive(self.bg_Bottom_In, MDL.Guild.IsHasGuild()) UTL.UIRender.AdaptiveImageSizeFit(self.bg_Bottom, true) UTL.UIRender.AdaptiveImageSizeFit(self.bg_Bottom_In, true) end function UIGuildBasePanel:OnButtonClicked(comp) if comp == self.UITemplateTitlePanel.btn_close then self:CloseView(true) elseif comp == self.UITemplateTitlePanel.btn_Home then CTL.HomeMain.CloseViewBackHomeMain() elseif comp == self.UITemplateTitlePanel.btn_Info then CTL.Guild.OpenGuildBaseNoteView() end end function UIGuildBasePanel:RefreshGuildMainPageRedpoint(active) self.toggles_Guild:SetRedPoint(0, active) end function UIGuildBasePanel:RefreshGuildMemberRedpoint(active) self.toggles_Guild:SetRedPoint(1, active) end function UIGuildBasePanel:RefreshTaskRedpoint(active) self.toggles_Guild:SetRedPoint(2, active) end function UIGuildBasePanel:RefreshGuildWelfareRedpoint(active) self.toggles_Guild:SetRedPoint(3, active) end function UIGuildBasePanel:SetGuildWarRedPoint(active) self.toggles_Guild:SetRedPoint(4, active) end function UIGuildBasePanel:OnValueChanged(comp, index) if comp == self.toggles_Guild then self.subView:CloseAll() local isHasGuild = MDL.Guild.IsHasGuild() if index == 0 then if isHasGuild then self:OpenUIGuildMain() else self:OpenUIUIGuildApply() end self.context.selectIndex = 0 elseif index == 1 then if isHasGuild then self:OpenUIGuildMember() else self:OpenUIGuildCreate() end self.context.selectIndex = 1 elseif index == 2 then self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildTask),{parentView = self, taskSubViewTab = self.context.taskSubViewTab or 0}) self.context.selectIndex = 2 elseif index == 3 then self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildWelfare)) self.context.selectIndex = 3 elseif index == 4 then self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildActivityEntrance)) self.context.selectIndex = 4 elseif index == 5 then if self.context.buildId then self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildArchitecture),{buildId = self.context.buildId}) else self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildArchitecture)) end self.context.selectIndex = 5 end if index ~= 2 then self.context.taskSubViewTab = 0 end end end function UIGuildBasePanel:OpenUIUIGuildApply() self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildApply),self.context) end function UIGuildBasePanel:OpenUIGuildMain() self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildMain)) end function UIGuildBasePanel:OpenUIGuildCreate() self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildCreate)) end function UIGuildBasePanel:OpenUIGuildMember() self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIGuildMember)) end return UIGuildBasePanel