|
|
- LightItem = LightItem or BaseClass(BaseItem)
- local LightItem = LightItem
-
- function LightItem:__init()
- self.base_file = "light"
- self.layout_file = "LightItem"
- self.model = LightModel:GetInstance()
-
- self:Load()
- end
-
- function LightItem:Load_callback()
- self.nodes = {
- "mark_image:obj","name_text:txt","click_con:obj","red_image:obj","select_image:obj",
- "wear_image:obj","active_image2:obj","lock_image:obj","up_image:obj","head:img",
- }
- self:GetChildren(self.nodes)
-
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- end
-
- function LightItem:AddEvents( )
- local function onClick(target,x,y)
- if target == self.click_con_obj then
- self.call_back(self.data.id)
- end
- end
- AddClickEvent(self.click_con_obj,onClick)
-
- local function on_ans_update_red_dot( )
- self:RedDotRefresh()
- end
- self:BindEvent(NewMainRoleModel:getInstance(), NewMainRoleModel.ANS_UPDATE_RED_DOT, on_ans_update_red_dot)
- end
-
-
- function LightItem:RedDotRefresh( )
- self.red_image_obj:SetActive(self.model:GetLightOneRed(false,self.data.id))
- end
-
- function LightItem:UpdateView( )
- if not self.data then
- return
- end
- local can_active = self.model:CanLightActive( false,self.data.id )
- local is_active = self.model:GetLightIsActive( self.data.id )
- self.wear_image_obj:SetActive(self.model:GetLightUsingSkin() == self.data.id)
- self.mark_image_obj:SetActive(not is_active and (not can_active))
- self.lock_image_obj:SetActive((not is_active) and (not can_active))
- self.select_image_obj:SetActive(self.data.id == self.select_id)
- self.active_image2_obj:SetActive(can_active)
- self.up_image_obj:SetActive(self.model:CanLightUpGrade( false,self.data.id ))
- lua_resM:setImageSprite(self, self.head_img, "lighticon_asset", "light_icon_" .. self.index,true)
-
- self:RedDotRefresh()
- local conf = self.model:GetLightConfOne( self.data.id )
- if conf then
- self.name_text_txt.text = Trim(conf.name)
- end
- end
-
- function LightItem:GetId( )
- return self.fashion_id or 0
- end
-
- function LightItem:SetData(index, data, call_back,select_id)
- self.index = index
- self.data = data
- self.call_back = call_back
- self.select_id = select_id
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- end
-
- function LightItem:__delete( )
-
- end
|