// 本脚本只在不存在时会生成一次。已存在不会再次生成覆盖 using UnityEngine; using NBC; namespace NBF { public partial class CommonTopPanel : UIPanel { public override string UIPackName => "Common"; public override string UIResName => "CommonTopPanel"; protected override void OnInit() { ContentPane.sortingOrder = UIDef.UIOrder.CommonTopPanel; } protected override void OnShow() { InputManager.OnUICanceled += OnUICanceled; } private void OnUICanceled(string action) { if (action == InputDef.UI.Back) { var uis = UI.Inst.GetAllUI(); foreach (var ui in uis) { if (ui.ContentPane.sortingOrder > 0) continue; if (ui.IsTop && !IsDontBack) { ui.Hide(); } } } } protected override void OnHide() { InputManager.OnUICanceled -= OnUICanceled; } protected override void OnDestroy() { base.OnDestroy(); } } }