ChildSkillItem = ChildSkillItem or BaseClass(BaseItem) function ChildSkillItem:__init() self.base_file = "child" self.layout_file = "ChildSkillItem" self.is_delay_callback = true -- self.use_local_view = true self.model = ChildModel:GetInstance() self:Load() end function ChildSkillItem:Load_callback() self.nodes = { "lock_img:obj","icon:img","text:tmp","chosen_1:obj","bg:obj","red_dot:obj", "diBg:obj:img", --"lv:tmp", } self:GetChildren(self.nodes) lua_resM:setOutsideImageSprite(self, self.diBg_img, GameResPath.GetChildIcon("child_skill_item_bg"), false) self:InitEvent() if self.need_refreshData then self:SetData(self.skill_id,self.skill_lv,self.callback) self:SetChosen(self.isChosen) self:SetRedDot(self.is_redDot) end end function ChildSkillItem:InitEvent() local function onBtnClickHandler(target, x, y) if target == self.diBg_obj then --Message.show("Ñ¡ÖÐaaa:",self.skill_lv) self.callback(self) end end AddClickEvent(self.diBg_obj, onBtnClickHandler) end function ChildSkillItem:SetData(skill_id,skill_lv,callback) self.skill_id = skill_id --self.index = skill_id.sequence self.skill_lv = skill_lv or 0 self.callback = callback or self.callback if self.is_loaded then -- if self.skill_id then local list = self.model:GetConfigChildSkillInfo(skill_id,1) --死取一级的名字 if list and list.skill_name then self.text_tmp.text = Trim(list.skill_name) end else self.text_tmp.text = "未激活" end --lv --self.lv_tmp.text = "Lv."..skill_lv -- self:SetLocked( false ) if skill_lv == 0 then self:SetLocked( true ) elseif skill_lv == 2 then -- self.chosen_1_obj:SetActive(true) end -- 技能图标 lua_resM:setOutsideImageSprite(self, self.icon_img, GameResPath.GetSkillIcon(self.skill_id),false) else self.need_refreshData = true end end function ChildSkillItem:SetLocked( bool ) self.is_locked = bool if self.is_loaded then self.lock_img_obj:SetActive(bool) SetImageGray(self.icon_img, bool) self.text_tmp.text = HtmlColorTxt( DeleteColorTag(self.text_tmp.text) , bool and ColorUtil.GRAY_DARK or ColorUtil.WHITE_DARK) self.need_refreshData = false else self.need_refreshData = true end end function ChildSkillItem:SetRedDot( bool ) self.is_redDot = bool if self.is_loaded then self.red_dot_obj:SetActive(bool) self.need_refreshData = false else self.need_refreshData = true end end function ChildSkillItem:GetRedDot( ) return self.is_redDot end function ChildSkillItem:SetChosen(bool) self.isChosen = bool if self.is_loaded then if bool then --self.bg_obj:SetActive(false) self.chosen_1_obj:SetActive(true) else --self.bg_obj:SetActive(true) self.chosen_1_obj:SetActive(false) end else self.need_refreshData = true end end