local ItemCell = class("ItemCell", BaseCell) function ItemCell:init() local uiMap = self:getUIMap() self.icon = uiMap["item_cell.icon"] self.num = uiMap["item_cell.num"] self.bg = uiMap["item_cell.bg"] self.mask = uiMap["item_cell.mask"] self.check = uiMap["item_cell.check"] self.fragment =uiMap["item_cell.fragment"] end function ItemCell:refresh(entity) self:_refresh(entity:getId(), entity:getCount()) end function ItemCell:refreshByCfg(id, count) self:_refresh(id, count) end function ItemCell:_refresh(itemId, count) local cfg = ConfigManager:getConfig("item")[itemId] self.bg:setSprite(GConst.ATLAS_PATH.ICON_ITEM, GConst.FRAME_QLT[cfg.qlt]) self.num:setText(GFunc.num2Str(count)) if cfg.type == GConst.ItemConst.ITEM_TYPE.HERO_FRAGMENT then local heroInfo = ConfigManager:getConfig("hero")[cfg.parameter] if heroInfo then self.icon:setSprite(GConst.ATLAS_PATH.ICON_HERO, heroInfo.icon) else self.icon:setSprite(GConst.ATLAS_PATH.COMMON, "common_alpha") end self.fragment:setVisible(true) else self.icon:setSprite(GConst.ATLAS_PATH.ICON_ITEM, cfg.icon) self.fragment:setVisible(false) end self.mask:setVisible(false) self.check:setVisible(false) end function ItemCell:setTouchEnable(enable) self:getBaseObject():setTouchEnable(enable == true) end function ItemCell:addClickListener(func) self:getBaseObject():addClickListener(func) end function ItemCell:showMask(showMask) local uiMap = self:getUIMap() local mask = uiMap["item_cell.mask"] mask:setVisible(showMask == true) end function ItemCell:showCheck(showCheck) local uiMap = self:getUIMap() local check = uiMap["item_cell.check"] check:setVisible(showCheck == true) end function ItemCell:showLock(showLock) end function ItemCell:setNum(numStr) local uiMap = self:getUIMap() local num = uiMap["item_cell.num"] num:setText(numStr) end return ItemCell