diff --git a/Demo/API_V2/Assets/Scripts/DetailsController.cs b/Demo/API_V2/Assets/Scripts/DetailsController.cs index 2967703e9..20cdbd3d4 100644 --- a/Demo/API_V2/Assets/Scripts/DetailsController.cs +++ b/Demo/API_V2/Assets/Scripts/DetailsController.cs @@ -78,7 +78,7 @@ private void Start() } // 清除详情信息 - private void ClearDetails() + public void ClearDetails() { // 销毁详情信息 Destroy(_details); @@ -105,7 +105,7 @@ private void ClearDetails() // 初始化详情信息 public void Init(EntrySO so) { - ClearDetails(); + // ClearDetails(); entrySO = so; titleText.text = so.entryName; diff --git a/Demo/API_V2/Assets/Scripts/GameManager.cs b/Demo/API_V2/Assets/Scripts/GameManager.cs index 971063485..d51960814 100644 --- a/Demo/API_V2/Assets/Scripts/GameManager.cs +++ b/Demo/API_V2/Assets/Scripts/GameManager.cs @@ -91,6 +91,11 @@ private void Start() // 切换 MainCanvas 和 DetailsCanvas 的显示状态 public void SwitchCanvas() { + if (!_isMainCanvasActive) + { + // 提前销毁时机 防止预期外的行为发生 + detailsController.ClearDetails(); + } _isMainCanvasActive = !_isMainCanvasActive; mainCanvas.SetActive(_isMainCanvasActive); detailsCanvas.SetActive(!_isMainCanvasActive);