为什么我在 DoTween Sequence 的 AppenCallBack 中的方法永远不起作用

            foreach (var item in mMoveInfo)
            {
                var go = item;
                if (!item.OnlyPlayer)
                {
                    ……
                    //Doesn't matter
                }
                else
                {
                    Sequence sq = DOTween.Sequence();
                    if (go.End >= 2)
                    {
                        sq.Append(mPlayerBody.transform.DOLocalMoveY(0.92f + 0.5f * (go.End - 2),mCombineTime));
                        sq.AppendCallback(() =>
                        {
                            mPlayerControl.ShowFire();
                            mRunners[go.Begin - 2].Vanish();
                            mRunners.RemoveAt(go.Begin - 2);
                            mPlayerScore.ChangeScoreView(go.EndValue);
                            GameEventSystem.SendEvent(GameEvent.UIRefreshCoin);
                        });
                    }
                    else
                    {
                        sq.Append(mPlayerBody.transform.DOLocalMoveY(0,mCombineTime));
                        sq.AppendCallback(() =>
                        {
                            mPlayerControl.ShowFireGround();
                            mRunners[go.Begin - 2].Vanish();
                            mRunners.RemoveAt(go.Begin - 2);
                            mPlayerScore.ChangeScoreView(go.EndValue);
                            GameEventSystem.SendEvent(GameEvent.UIRefreshCoin);
                        });
                    }
                }
                yield return new WaitForSeconds(mCombineWaitTime);
            }

我正在制作一个游戏,需要一些补间(使用 DoTween)。在吐温结束时,我需要刷新 UI 中的硬币值(如您所见,GameEventSystem,静态一个)。在统一模拟器中,此代码运行良好,但是当我在 IOS 中运行游戏时,Xcode 说

"NullReferenceException: 未将对象引用设置为对象的实例。 在 PLayerPanel.ChangeCoinValue () [0x00000] 在 :0 在 System.action.Invoke () [0x00000] 在 :0 在 GameEventSystem.SendEvent (GameEvent eventName) [0x00000] 在 :0 在 DG.Tweening.TweenCallback.Invoke () [0x00000] 在 :0 在 DG.Tweening.Tween.OnTweenCallback (DG.Tweening.TweenCallback callback,DG.Tweening.Tween t) [0x00000] in :0 在 DG.Tweening.Sequence.ApplyInternalCycle(DG.Tweening.Sequence s、System.Single fromPos、System.Single toPos、DG.Tweening.Core.Enums.UpdateMode updateMode、System.Boolean useInverse、System.Boolean prevPosIsInverse、System.Boolean multiCycleStep) [0x00000] 在 :0 在 DG.Tweening.Sequence.DoApplyTween (DG.Tweening.Sequence s,System.Single prevPosition,System.Int32 prevCompletedLoops,System.Int32 newCompletedSteps,System.Boolean useInversePosition,DG.Tweening.Core.Enums.UpdateMode updateMode00000x0x0x0x0x0在 :0 在 DG.Tweening.Tween.DoGoto (DG.Tweening.Tween t,System.Single toPosition,System.Int32 toCompletedLoops,DG.Tweening.Core.Enums.UpdateMode updateMode) [0x00000] in 中:0 在 DG.Tweening.Core.DOTweenComponent.Update () [0x00000] 在 :0 "

为什么?

shanghaiditu 回答:为什么我在 DoTween Sequence 的 AppenCallBack 中的方法永远不起作用

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/352846.html

大家都在问