有时候Tween动画不会播放

页面打开时,会调用代码把所有的子物体的透明度 从0改到1,代码如下
 
 
float duration = 0.1f;
float interval = 0.1f;
float delay = 0;
for (int i = 0; i < _comMain.numChildren; i++)
{
var child = _comMain.GetChildAt(i);
child.alpha = 0;
child.TweenFade(1, duration).SetDelay(delay).OnComplete(() =>
{
Debug.Log("child "+ i + " finish");
});
delay += interval;
}
不断的打开关闭页面。有时打开页面时,会发现有的按钮透明度还是0(有几率出现,概率不大). 
这说明SetDelay()之后,有时TweenFade()方法没有执行。
看打印也可以发现透明度为0的按钮的OnComplete回调没执行
--------------
想问下这应该怎么修改才能让TweenFade一定执行。
 
 

 
已邀请:

麻瓜

赞同来自:

试试关闭动效设置里的 "容器组件不可见时自动停止"

super41

赞同来自:

刚才试了不加SetDelay, 直接用TweenFade,然后频繁的开关页面。也有几率出现TweenFade不执行的问题

谷主

赞同来自:

TweenFade本来就能一定执行。检查你代码的问题。

要回复问题请先登录注册