This commit is contained in:
MuHua-123
2025-08-29 14:08:02 +08:00
parent 04b65e6945
commit 9a20ee8ac5
17 changed files with 110 additions and 61 deletions
+35 -9
View File
@@ -8,24 +8,50 @@ using MuHua;
/// <summary>
/// UI模块
/// </summary>
public class ModuleUI : ModuleSingle<ModuleUI> {
public static EnumPage page;
public static event Action<EnumPage> OnJumpPage;
public class ModuleUI : ModuleUISingle<ModuleUI> {
/// <summary> 当前页面 </summary>
public static Page Current;
/// <summary> 回退页面 </summary>
public static Page BackPage;
/// <summary> 控件列表 </summary>
public static List<UIControl> controls = new List<UIControl>();
/// <summary> 页面跳转事件 </summary>
public static event Action<Page> OnJumpPage;
public UIDocument document;// 绑定文档
/// <summary> 跳转页面 </summary>
public static void Settings(Page pageType) {
BackPage = Current;
Current = pageType;
OnJumpPage?.Invoke(Current);
}
/// <summary> 回退页面 </summary>
public static void Back() {
Current = BackPage;
OnJumpPage?.Invoke(Current);
}
/// <summary> 添加控件 </summary>
public static void AddControl(UIControl control) {
controls.Add(control);
}
/// <summary> 移除控件 </summary>
public static void RemoveControl(UIControl control) {
controls.Remove(control);
}
/// <summary> 根目录文档 </summary>
public VisualElement root => document.rootVisualElement;
public override VisualElement Element => document.rootVisualElement;
protected override void Awake() => NoReplace();
/// <summary> 跳转页面 </summary>
public static void Settings(EnumPage pageType) => OnJumpPage?.Invoke(pageType);
private void Update() => controls.ForEach(control => control.Update());
private void OnDestroy() => controls.ForEach(control => control.Dispose());
}
/// <summary>
/// 页面
/// </summary>
public enum EnumPage {
public enum Page {
/// <summary> 无 </summary>
None,
/// <summary> 登录 </summary>
Login,
}