|
|
- --[[@------------------------------------------------------------------
- @description:首充附加主页签
- @author:huangcong
- ----------------------------------------------------------------------]]
- RechargeAddTab = RechargeAddTab or BaseClass(BaseItem)
-
- RechargeAddTab.Width = 138
- RechargeAddTab.Height = 158
- local RechargeAddTab = RechargeAddTab
- function RechargeAddTab:__init()
- self.base_file = "rechargeActivity"
- self.layout_file = "RechargeAddTab"
- self.model = RechargeActivityModel:getInstance()
- self.need_red = false
-
- self:Load()
- end
-
- function RechargeAddTab:Load_callback()
- local nodes = {
- "nameImg:img:obj", "bg:img:obj", "redDot:obj", "select_bg:obj","nameGrayImg:obj:img",
- }
- self:GetChildren(nodes)
-
- self:InitEvent()
- if self.need_refreshData then
- self:SetData(self.data,self.index)
- end
- end
-
- function RechargeAddTab:__delete()
-
- end
-
- function RechargeAddTab:InitEvent()
- local function clickHandler(target)
- if target == self.bg_obj then
- if self.callback then
- self.callback(self.data,self.index)
- end
- end
- end
- AddClickEvent(self.bg_obj, clickHandler, 1)
-
- -- local tabRedFunc = function (id, flag)
- -- if id == VipModel.TabType.PurchaseGift then
- -- self:SetData()
- -- end
- -- end
- -- self:BindEvent(self.model, VipModel.UPDATE_VIP_VIEW_RED, tabRedFunc)--更新红点顺便更新界面
- end
-
- function RechargeAddTab:SetData(data,index)
- self.data = data or self.data
- self.index = index or self.index
- if self.is_loaded then
- self.need_refreshData = false
- else
- self.need_refreshData = true
- return
- end
- if not self.data or not self.data.product_cfg then return end
- lua_resM:setOutsideImageSprite(self, self.nameImg_img, GameResPath.GetRechargeActivityImage("recharge_add_tab_name_"..self.data.product_cfg.product_id), true)
- lua_resM:setOutsideImageSprite(self, self.nameGrayImg_img, GameResPath.GetRechargeActivityImage("recharge_add_tab_name_gray_"..self.data.product_cfg.product_id), true)
-
- local red_bool = false
- for k,v in pairs(self.data.award_cfg) do
- if v.state == 1 then
- red_bool = true
- break
- end
- end
- if not red_bool then
- local need_find_add_recharge_list = CookieWrapper.Instance:GetCookie(CookieLevelType.Account,CookieKey.RECHARGE_ADD_RED) or {}
- red_bool = need_find_add_recharge_list[self.data.product_cfg.product_id] or false
- end
- self.redDot_obj:SetActive(red_bool)
- self:SetSelect(self.choose_index)
- end
-
- function RechargeAddTab:SetSelect( index )
- self.choose_index = index
- if self.is_loaded then
- self.select_bg_obj:SetActive(self.index == self.choose_index)
- self.bg_obj:SetActive(self.index ~= self.choose_index)
- self.nameGrayImg_obj:SetActive(self.index ~= self.choose_index)
- self.nameImg_obj:SetActive(self.index == self.choose_index)
- else
- self.need_refreshData = true
- end
- end
-
- function RechargeAddTab:SetCallBack( callback )
- self.callback = callback
- end
-
|