源战役客户端
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 

91 строки
2.2 KiB

ChatDressVerTabItem = ChatDressVerTabItem or BaseClass(BaseItem)
local ChatDressVerTabItem = ChatDressVerTabItem
function ChatDressVerTabItem:__init()
self.base_file = "chatDress"
self.layout_file = "ChatDressVerTabItem"
self.model = ChatDressModel:GetInstance()
self:Load()
end
function ChatDressVerTabItem:Load_callback()
self.nodes = {
"select_image:obj","icon_image:img","name_text:tmp","click_con:obj","red_image:obj",
}
self:GetChildren(self.nodes)
self:AddEvents()
if self.need_refreshData then
self:UpdateView()
end
if self.need_reselect then
self:SetSelect(self.is_select)
end
if self.need_refreshRed then
self:SetRedDot()
end
end
function ChatDressVerTabItem:AddEvents( )
local function onClick(target,x,y)
if target == self.click_con_obj then
self.call_back(self.index)
end
end
AddClickEvent(self.click_con_obj,onClick)
local function on_update_red( )
self:SetRedDot()
end
self.on_update_red_id = self.model:BindOne("red_data", on_update_red)
end
function ChatDressVerTabItem:UpdateView( )
self.name_text_tmp.text = self.data.name
lua_resM:setImageSprite(self, self.icon_image_img, "chatDress_asset", "chatDress_type"..self.index, true)
self:SetRedDot()
end
function ChatDressVerTabItem:SetSelect( bool )
self.is_select = bool
if self.is_loaded then
self.need_reselect = false
self.select_image_obj:SetActive(bool)
local color = bool and ColorUtil:ConvertHexToRGBColor("ffffff") or ColorUtil:ConvertHexToRGBColor("a9c1e1")
self.name_text_tmp.color = color
else
self.need_reselect = true
end
end
function ChatDressVerTabItem:SetRedDot( )
local bool = self.model:ShowSubRedPoint(self.data.id)
self.need_red = bool
if self.is_loaded then
self.need_refreshRed = false
self.red_image_obj:SetActive(bool)
else
self.need_refreshRed = true
end
end
function ChatDressVerTabItem:SetData( index, data, call_back)
self.index = index
self.data = data
self.call_back = call_back
if self.is_loaded then
self.need_refreshData = false
self:UpdateView()
else
self.need_refreshData = true
end
end
function ChatDressVerTabItem:__delete( )
if self.on_update_red_id then
self.model:UnBind(self.on_update_red_id)
self.on_update_red_id = nil
end
end