From f5880388481700061f1502abc9acb5a3c17ae9c6 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Thu, 6 Jul 2023 19:17:16 +0800 Subject: [PATCH] Update UIButtonScale.cs --- .../UGUIExtension/MonoExtend/UIButtonScale.cs | 35 +++++++++++-------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/Assets/TEngine/Runtime/Extension/UGUIExtension/MonoExtend/UIButtonScale.cs b/Assets/TEngine/Runtime/Extension/UGUIExtension/MonoExtend/UIButtonScale.cs index 8ec505f8..1f9e26d1 100644 --- a/Assets/TEngine/Runtime/Extension/UGUIExtension/MonoExtend/UIButtonScale.cs +++ b/Assets/TEngine/Runtime/Extension/UGUIExtension/MonoExtend/UIButtonScale.cs @@ -12,10 +12,7 @@ public class UIButtonScale : MonoBehaviour, public GameObject tweenTarget; public Vector3 pressedScale = new Vector3(0.95f, 0.95f, 0.95f); public float duration = 0.1f; - - //是否移除当前gameObject身上所有的LeanTween。一般如果当前gameObject身上还有其他的Tween,例如Tween.Move,不建议移除所有的Tween public bool needRemoveAllTween = true; - private Vector3 _cacheScale; private Tweener _tweener; private bool _started = false; @@ -38,12 +35,16 @@ public class UIButtonScale : MonoBehaviour, public void OnDestroy() { - if (_tweener != null) + if (_tweener is { active: true }) { - DOTween.Kill(_tweener.id); - _tweener = null; + _tweener.Kill(); + } + _tweener = null; + + if (tweenTarget != null) + { + tweenTarget.transform.localScale = _cacheScale; } - tweenTarget.transform.localScale = _cacheScale; } void OnEnable() @@ -61,9 +62,12 @@ public class UIButtonScale : MonoBehaviour, { if (tweenTarget != null) { - if (needRemoveAllTween == false && _tweener != null) + if (needRemoveAllTween == false) { - DOTween.Kill(_tweener.id); + if (_tweener is { active: true }) + { + _tweener.Kill(); + } _tweener = null; } tweenTarget.transform.localScale = _cacheScale; @@ -82,11 +86,11 @@ public class UIButtonScale : MonoBehaviour, { if (needRemoveAllTween == false) { - if (_tweener != null) + if (_tweener is { active: true }) { - DOTween.Kill(_tweener.id); - _tweener = null; + _tweener.Kill(); } + _tweener = null; } if (isPressed) { @@ -132,9 +136,12 @@ public class UIButtonScale : MonoBehaviour, Init(); } _cacheScale = scale; - if (needRemoveAllTween == false && _tweener != null) + if (needRemoveAllTween == false) { - DOTween.Kill(_tweener.id); + if (_tweener is { active: true }) + { + _tweener.Kill(); + } _tweener = null; } }