--[[ <* @Author: Saber @Description: 职位申请界面 *> ]] GuildPositionApplyView = GuildPositionApplyView or BaseClass(BaseView) local GuildPositionApplyView = GuildPositionApplyView function GuildPositionApplyView:__init() self.base_file = "guild" self.layout_file = "GuildPositionApplyView" self.layer_name = "Activity" self.destroy_imm = true self.use_background = true --全屏界面默认使用这个参数 self.change_scene_close = true --是否切换场景时关闭(弹出界面使用) self.model = GuildModel:getInstance() self.model:Fire(GuildModel.REQUEST_CCMD_EVENT, 40023) -- 请求职位情况 self.apply_item_list = {} -- 可申请职位item节点 self.target_pos = 0 -- 默认没选中节点 -- self.can_apply_agency = false -- 是否可申请代理社长 -- 界面中可申请的职位 self.show_positions = { [1] = {pos = GuildModel.GuildPosition.ViceLeader}, [2] = {pos = GuildModel.GuildPosition.Teasure}, [3] = {pos = GuildModel.GuildPosition.Elite} } self.load_callback = function () self:LoadSuccess() self:AddEvent() end self.open_callback = function ( ) self:UpdateView() end self.destroy_callback = function ( ) self:DestroySuccess() end end function GuildPositionApplyView:Open( ) --self.data = data BaseView.Open(self) end function GuildPositionApplyView:LoadSuccess() local nodes = { "content", "content/apply_con", } self:GetChildren(nodes) local function close_callback() self:Close() end self.tabWindowComponent = UITabWindow.New(self.transform, {}, nil, close_callback, self.background_wnd, self.content, UITabWindow.SizeSmallNoTab, nil, nil, false) self.tabWindowComponent:SetTitleText("职位申请") self.tabWindowComponent:SetBackgroundRes("default_bg_6") end function GuildPositionApplyView:AddEvent() local function refresh_pos_num() self:UpdateView() end self:BindEvent(self.model, GuildModel.RefreshPostNumEvt, refresh_pos_num) end function GuildPositionApplyView:UpdateView() self:UpdateApplyPosItem() end -- 创建可申请职位节点 function GuildPositionApplyView:UpdateApplyPosItem() local item for k, v in ipairs(self.show_positions) do item = self.apply_item_list[k] if not item then item = GuildPositionApplyItem.New(self.apply_con) self.apply_item_list[k] = item end item:SetAnchoredPosition((k-1) * 311, 0) item:SetData(v, k < #self.show_positions) end end function GuildPositionApplyView:DestroySuccess( ) for k, v in pairs(self.apply_item_list) do v:DeleteMe() v = nil end self.apply_item_list = nil if self.tabWindowComponent then self.tabWindowComponent:DeleteMe() self.tabWindowComponent = nil end end