using System; using System.Collections.Generic; using DG.Tweening; using SLSUtilities.UI; using TMPro; using UnityEngine; using UnityEngine.UI; namespace Cielonos.MainGame.UI { /// /// 通用确认 / 信息提示页面。 /// /// 作为动态 Prefab 实例化,使用完毕后自动销毁。 /// 通过 静态方法创建并显示。 /// /// /// 支持任意数量的按钮: /// - 两个按钮(确认 / 取消)用于需要用户确认的场景。 /// - 单个按钮(确定)用于信息提示场景。 /// /// [RequireComponent(typeof(CanvasGroup))] public class ConfirmUIPage : UIPageBase { // ──────────────────── 常量 ──────────────────── private const float FadeInDuration = 0.2f; private const float FadeOutDuration = 0.15f; // ──────────────────── 序列化引用 ──────────────────── [Header("Content")] [SerializeField] private TMP_Text titleText; [SerializeField] private TMP_Text descriptionText; [Header("Buttons")] [SerializeField] private Transform buttonContainer; [SerializeField] private Button buttonPrefab; // ──────────────────── 运行时状态 ──────────────────── private readonly List