EquipDecomposeView = EquipDecomposeView or BaseClass(BaseView) function EquipDecomposeView:__init(parent) self.base_file = "bag" self.layout_file = "EquipDecomposeView" self.layer_name = "UI" self.destroy_imm = true self.use_background = true self.change_scene_close = true self.is_set_zdepth = true --self:AddPreLoadList("common", {"AwardItem"}) self.item_list = {} --self.use_local_view = true self.load_callback = function() self:LoadSuccess() self:InitEvent() end self.open_callback = function() self:SetData() end self.close_callback = function() end self.destroy_callback = function() self:Clear() end end function EquipDecomposeView:LoadSuccess() self.closeBtn = self:GetChild("Window/windowCloseBtn").gameObject self.okBtn = self:GetChild("okBtn").gameObject self.item_content = self:GetChild("itemContent") self.text = self:GetChild("text"):GetComponent("Text") self.text.text = "拆解道具后,将获得以下材料哦\n" .."必得道具一定会获得\n" .."概率道具会随机获得" end function EquipDecomposeView:InitEvent() local function onClickHandler(target) if target == self.okBtn then GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT, 15019, {[self.vo.goods_id] = 1}) end self:Close() end AddClickEvent(self.closeBtn,onClickHandler) AddClickEvent(self.okBtn,onClickHandler) end function EquipDecomposeView:Open(vo) self.vo = vo BaseView.Open(self) end function EquipDecomposeView:SetData() if not self.vo then return end local config = Config.Goodsdecompose[self.vo.type_id] if config then local regular_mat = ErlangParser:GetInstance():Parse(config.regular_mat) local irregular_mat = ErlangParser:GetInstance():Parse(config.irregular_mat) for i = 1, config.regular_num do self.item_list[i] = UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem, self.item_content) self.item_list[i]:SetData(regular_mat[i][2], regular_mat[i][3]) self.item_list[i]:SetRandomDropTip(true,"必得") end for i= #regular_mat + 1, #regular_mat + #irregular_mat do self.item_list[i] = UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem, self.item_content) self.item_list[i]:SetData(irregular_mat[i - config.regular_num][2]) self.item_list[i]:SetRandomDropTip(true,"概率") end end end function EquipDecomposeView:Clear( ) for i, v in pairs(self.item_list) do v:ReleaseObj() v = nil end self.item_list = {} end