|
|
- RankTargetTabItem = RankTargetTabItem or BaseClass(BaseItem)
- local RankTargetTabItem = RankTargetTabItem
-
- function RankTargetTabItem:__init()
- self.base_file = "rank"
- self.layout_file = "RankTargetTabItem"
- self.model = RankModel:getInstance()
-
- self:Load()
- end
-
- function RankTargetTabItem:Load_callback()
- self.nodes = {
- "select:img:obj", "tabName:tmp", "red:obj",
- }
- self:GetChildren(self.nodes)
-
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- if self.need_reclick then
- self:SetSelect(self.click_rank_type)
- end
- end
-
- function RankTargetTabItem:AddEvents( )
- local on_click = function ( click_obj )
- if self.select_obj == click_obj then
- if self.tab_click_back then
- self.tab_click_back(self.rank_type, self.is_history)
- end
- end
- end
- AddClickEvent(self.select_obj, on_click)
-
-
- local function on_ans_update_red_dot()
- if self.is_loaded then
- self:UpdateRed()
- end
- end
- self:BindEvent(self.model, RankModel.ANS_UPDATE_RED_DOT, on_ans_update_red_dot)
-
- end
-
- function RankTargetTabItem:UpdateRed( )
- local red = self.model:IsRankTypeNeedRed(self.rank_type)
- self.red_obj:SetActive(red)
- end
-
- function RankTargetTabItem:UpdateView( )
- local rank_tab_data = self.model:GetRankTabDataByType(self.rank_type)
- if not rank_tab_data then--说明是历史记录页签
- if self.is_history then
- self.tabName_tmp.text = "历史记录"
- end
- else
- self.tabName_tmp.text = rank_tab_data.name
- end
- self:UpdateRed()
- end
-
- function RankTargetTabItem:SetData( rank_type, tab_click_back, is_history)
- self.rank_type = rank_type
- self.tab_click_back = tab_click_back
- self.is_history = is_history
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- end
-
- function RankTargetTabItem:SetSelect(click_rank_type)
- self.click_rank_type = click_rank_type
- if self.is_loaded then
- self.need_reclick = false
- if self.click_rank_type == self.rank_type then
- lua_resM:setImageSprite(self, self.select_img, "rank_asset","rank_cs_tab_select")
- SetTMPSharedMaterial(self.tabName_tmp, ShaderTools.TMPSharedMaterialType.HKYTW7OutlineBlueTab)
- self.tabName_tmp.color = ColorUtil:ConvertHexToRGBColor("#ffffff")
- else
- lua_resM:setImageSprite(self, self.select_img, "uiComponent_asset","com_empty")
- SetTMPSharedMaterial(self.tabName_tmp, ShaderTools.TMPSharedMaterialType.HKYTW7FFDefault)
- self.tabName_tmp.color = ColorUtil:ConvertHexToRGBColor("#9eb3cf")
- end
- else
- self.need_reclick = true
- end
- end
-
- function RankTargetTabItem:__delete( )
-
- end
|