47 lines
1.2 KiB
Plaintext
47 lines
1.2 KiB
Plaintext
PopUpItemView = class("PopUpItemView", BaseView);
|
|
|
|
PopUpItemView.ViewType = UIViewType.Popup10Layer;
|
|
|
|
function PopUpItemView:Init()
|
|
local grid = self:FindComponent("ItemGrid", UIGrid);
|
|
self.ctl = UIGridListCtrl.new(grid, ItemCell, "ItemCell");
|
|
|
|
self.icon = self:FindComponent("TitleIcon", UISprite);
|
|
|
|
self.bgClick = self:FindGO("BgClick");
|
|
self:AddClickEvent(self.bgClick, function (go)
|
|
self:CloseSelf();
|
|
end);
|
|
|
|
self.effectMap = {};
|
|
|
|
self.effectMap[1] = self:FindGO("TitleEffect");
|
|
self.effectMap[2] = self:FindGO("TitleEffect2");
|
|
end
|
|
|
|
function PopUpItemView:OnEnter()
|
|
PopUpItemView.super.OnEnter(self);
|
|
self.gameObject:SetActive(true);
|
|
|
|
local viewdata = self.viewdata.viewdata;
|
|
if(viewdata)then
|
|
local icon, datas, effectIndex = viewdata.icon, viewdata.datas, viewdata.effectIndex;
|
|
self:UpdateData(icon, datas, effectIndex);
|
|
end
|
|
end
|
|
|
|
function PopUpItemView:UpdateData(icon, datas, effectIndex)
|
|
self.icon.spriteName = tostring(icon);
|
|
self.icon:MakePixelPerfect();
|
|
self.ctl:ResetDatas(datas);
|
|
|
|
effectIndex = effectIndex or 1;
|
|
for i=1,#self.effectMap do
|
|
self.effectMap[i]:SetActive(i == effectIndex);
|
|
end
|
|
end
|
|
|
|
function PopUpItemView:OnExit()
|
|
PopUpItemView.super.OnExit(self);
|
|
self.gameObject:SetActive(false);
|
|
end |