protected virtual void clearCallback() { mHSLFadingUserData = null; mHSLFadingUserData = null; mHSLDoneCallback = null; mHSLDoneUserData = null; }
protected void doneCallback(HSLCallback curDoneCallback, object curDoneUserData, ComponentHSL component) { // 先保存回调,然后再调用回调之前就清空回调,确保在回调函数执行时已经完全完成 HSLCallback tempCallback = curDoneCallback; object tempUserData = curDoneUserData; clearCallback(); if (tempCallback != null) { tempCallback(component, tempUserData, false, true); } }
public override void init() { base.init(); mStartHSL = Vector3.zero; mTargetHSL = Vector3.zero; mFadeTime = 1.0f; mTimeOffset = 0.0f; mFadeChildren = true; mFadingCallback = null; mFadeDoneCallback = null; mFadingUserData = null; mFadeDoneUserData = null; }
protected static void setCallback(HSLCallback callback, object userData, ref HSLCallback curCallback, ref object curUserData, ComponentHSL component) { HSLCallback tempCallback = curCallback; object tempUserData = curUserData; curCallback = null; curUserData = null; // 如果回调函数当前不为空,则是中断了正在进行的变化 if (tempCallback != null) { tempCallback(component, tempUserData, true, false); } curCallback = callback; curUserData = userData; }
public void setScaleDoneCallback(HSLCallback hslCallback, object userData) { mFadeDoneCallback = hslCallback; mFadeDoneUserData = userData; }
public void setScalingCallback(HSLCallback hslCallback, object userData) { mFadingCallback = hslCallback; mFadingUserData = userData; }
public void setHSLDoneCallback(HSLCallback hslDone, object doneUserData) { setCallback(hslDone, doneUserData, ref mHSLDoneCallback, ref mHSLDoneUserData, this); }
public void setHSLFadingCallback(HSLCallback fading, object fadingUserData) { setCallback(fading, fadingUserData, ref mHSLFadingCallback, ref mHSLFadingUserData, this); }