源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

97 lines
2.5 KiB

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