95 lines
2.1 KiB
Plaintext
95 lines
2.1 KiB
Plaintext
MidAlphaMsg = class("MidAlphaMsg", CoreView)
|
|
|
|
MidAlphaMsg.ResID = ResourcePathHelper.UICell("MidAlphaMsg")
|
|
|
|
local pos = LuaVector3();
|
|
function MidAlphaMsg:ctor(parent)
|
|
self.gameObject = self:CreateObj(parent)
|
|
pos:Set(0,135,0);
|
|
self.gameObject.transform.localPosition = pos;
|
|
|
|
self:Init();
|
|
end
|
|
|
|
function MidAlphaMsg:CreateObj(parent)
|
|
return Game.AssetManager_UI:CreateAsset(MidAlphaMsg.ResID, parent);
|
|
end
|
|
|
|
function MidAlphaMsg:Init()
|
|
self.bg = self.gameObject:GetComponent(UISprite);
|
|
self.label = self:FindComponent("Label", UILabel);
|
|
end
|
|
|
|
function MidAlphaMsg:SetData(data)
|
|
self.label.text = data;
|
|
|
|
self:SetDelayDestroy(1, 2, 0.5);
|
|
end
|
|
|
|
function MidAlphaMsg:SetExitCall(exitCall, exitCallParam)
|
|
self.exitCall = exitCall;
|
|
self.exitCallParam = exitCallParam;
|
|
end
|
|
|
|
function MidAlphaMsg:Exit()
|
|
self:CancelTween()
|
|
if(not Slua.IsNull(self.gameObject))then
|
|
Game.GOLuaPoolManager:AddToSceneUIPool(MidAlphaMsg.ResID, self.gameObject)
|
|
end
|
|
self.gameObject = nil;
|
|
|
|
if(self.exitCall)then
|
|
self.exitCall(self.exitCallParam);
|
|
end
|
|
end
|
|
|
|
|
|
-- anim begin
|
|
function MidAlphaMsg:SetDelayDestroy(fadeInTime, stayTime, fadeOutTime)
|
|
if(self.gameObject)then
|
|
self.bg.alpha = 0;
|
|
|
|
self.fadeInTime = fadeInTime or 0;
|
|
self.stayTime = stayTime or 3;
|
|
self.fadeOutTime = fadeOutTime or 0;
|
|
self:_FadeIn()
|
|
end
|
|
end
|
|
|
|
function MidAlphaMsg:CancelTween()
|
|
if(self.lt) then
|
|
self.lt:cancel()
|
|
self.lt = nil
|
|
end
|
|
end
|
|
|
|
function MidAlphaMsg:_FadeIn()
|
|
self:CancelTween()
|
|
if(not Slua.IsNull(self.gameObject)) then
|
|
self.lt = LeanTween.value(self.gameObject,MidAlphaMsg._AlphaTo,0,1,self.fadeInTime)
|
|
self.lt.onUpdateParam = self
|
|
self.lt.onCompleteObject = MidAlphaMsg._FadeOut
|
|
self.lt.onCompleteParam = self
|
|
end
|
|
end
|
|
|
|
function MidAlphaMsg._AlphaTo(alpha, self)
|
|
self.bg.alpha = alpha;
|
|
end
|
|
|
|
function MidAlphaMsg:_FadeOut()
|
|
self:CancelTween()
|
|
if(not Slua.IsNull(self.gameObject)) then
|
|
self.lt = LeanTween.value(self.gameObject,MidAlphaMsg._AlphaTo,1,0,self.fadeOutTime)
|
|
self.lt.delay = self.stayTime
|
|
self.lt.onUpdateParam = self
|
|
self.lt.onCompleteObject = MidAlphaMsg._FadeEnd
|
|
self.lt.onCompleteParam = self
|
|
end
|
|
end
|
|
|
|
function MidAlphaMsg:_FadeEnd()
|
|
self:Exit();
|
|
end
|
|
-- anim end
|