修改框架
This commit is contained in:
@@ -6,9 +6,10 @@ using UnityEngine;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 资源模块
|
/// 资源模块
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ModuleAssets<Data> : Module<ModuleAssets<Data>> {
|
public class ModuleAssets<Data> {
|
||||||
/// <summary> 数据列表 </summary>
|
|
||||||
protected List<Data> datas = new List<Data>();
|
protected List<Data> datas = new List<Data>();
|
||||||
|
/// <summary> 核心模块 </summary>
|
||||||
|
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||||
|
|
||||||
/// <summary> 更改事件 </summary>
|
/// <summary> 更改事件 </summary>
|
||||||
public virtual event Action OnChange;
|
public virtual event Action OnChange;
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 核心模块,实现业务逻辑
|
||||||
|
/// </summary>
|
||||||
|
public class ModuleCore : Module<ModuleCore> {
|
||||||
|
|
||||||
|
}
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 6f0700aede140c44fb927acc112b9998
|
guid: b61954fdf7766ae4eba3f4b79c307057
|
||||||
MonoImporter:
|
MonoImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
@@ -6,9 +6,11 @@ using UnityEngine.UIElements;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// UI控件
|
/// UI控件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ModuleUIControl {
|
public class ModuleUIControl {
|
||||||
|
/// <summary> 核心模块 </summary>
|
||||||
|
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||||
/// <summary> 绑定的元素 </summary>
|
/// <summary> 绑定的元素 </summary>
|
||||||
public readonly VisualElement element;
|
public readonly VisualElement element;
|
||||||
/// <summary> 基础实例 </summary>
|
/// <summary> UI控件 </summary>
|
||||||
public ModuleUIControl(VisualElement element) => this.element = element;
|
public ModuleUIControl(VisualElement element) => this.element = element;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,19 +7,16 @@ using UnityEngine.UIElements;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// UI项
|
/// UI项
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ModuleUIItem<Data> {
|
public abstract class ModuleUIItem<Data> : ModuleUIControl {
|
||||||
/// <summary> 绑定的数据 </summary>
|
/// <summary> 绑定的数据 </summary>
|
||||||
public readonly Data value;
|
public readonly Data value;
|
||||||
/// <summary> 绑定的元素 </summary>
|
/// <summary> UI项 </summary>
|
||||||
public readonly VisualElement element;
|
public ModuleUIItem(Data value, VisualElement element) : base(element) {
|
||||||
/// <summary> 基础实例 </summary>
|
|
||||||
public ModuleUIItem(Data value, VisualElement element) {
|
|
||||||
this.value = value;
|
this.value = value;
|
||||||
this.element = element;
|
OnSelect += UnitUIPanelItem_OnSelect;
|
||||||
OnSelect += UIItem_OnSelect;
|
|
||||||
}
|
}
|
||||||
/// <summary> 侦听选择事件 </summary>
|
/// <summary> 侦听选择事件 </summary>
|
||||||
public virtual void UIItem_OnSelect(Data obj) {
|
public virtual void UnitUIPanelItem_OnSelect(Data obj) {
|
||||||
if (value.Equals(obj)) { SelectState(); }
|
if (value.Equals(obj)) { SelectState(); }
|
||||||
else { DefaultState(); }
|
else { DefaultState(); }
|
||||||
}
|
}
|
||||||
@@ -35,5 +32,5 @@ public abstract class ModuleUIItem<Data> {
|
|||||||
/// <summary> 选中状态 </summary>
|
/// <summary> 选中状态 </summary>
|
||||||
public virtual void SelectState() { }
|
public virtual void SelectState() { }
|
||||||
/// <summary> 释放 </summary>
|
/// <summary> 释放 </summary>
|
||||||
public virtual void Release() => OnSelect -= UIItem_OnSelect;
|
public virtual void Release() => OnSelect -= UnitUIPanelItem_OnSelect;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,11 +6,12 @@ using UnityEngine.UIElements;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// UI页面
|
/// UI页面
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ModuleUIPage : ModuleSingle<ModuleUIPage> {
|
public abstract class ModuleUIPage : MonoBehaviour {
|
||||||
/// <summary> 文档 </summary>
|
|
||||||
public UIDocument document;
|
public UIDocument document;
|
||||||
/// <summary> 根目录 </summary>
|
/// <summary> 根目录文档 </summary>
|
||||||
public VisualElement root => document.rootVisualElement;
|
public VisualElement root => document.rootVisualElement;
|
||||||
|
/// <summary> 核心模块 </summary>
|
||||||
|
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||||
/// <summary> 添加UI元素 </summary>
|
/// <summary> 添加UI元素 </summary>
|
||||||
public void Add(VisualElement child) => root.Add(child);
|
public void Add(VisualElement child) => root.Add(child);
|
||||||
/// <summary> 查询UI元素 </summary>
|
/// <summary> 查询UI元素 </summary>
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
public class UIGlobalPage : ModuleUIPage {
|
|
||||||
protected override void Awake() { }
|
|
||||||
|
|
||||||
private void Start() {
|
|
||||||
string url = "https://neiyihuizhouilabtest.zgfzjy.cn/api/client/color/categroies";
|
|
||||||
DataRequestGet request = new DataRequestGet(url);
|
|
||||||
request.OnCallback = (obj) => { Debug.Log(obj); };
|
|
||||||
WebRequest.Send(request);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -9,7 +9,9 @@ using UnityEngine.UIElements;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ModuleUIPanel : MonoBehaviour {
|
public abstract class ModuleUIPanel : MonoBehaviour {
|
||||||
/// <summary> 绑定的页面 </summary>
|
/// <summary> 绑定的页面 </summary>
|
||||||
public ModuleUIPage UIPage;
|
public ModuleUIPage ModuleUIPage;
|
||||||
|
/// <summary> 核心模块 </summary>
|
||||||
|
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||||
/// <summary> 绑定的根元素 </summary>
|
/// <summary> 绑定的根元素 </summary>
|
||||||
public abstract VisualElement Element { get; }
|
public abstract VisualElement Element { get; }
|
||||||
}
|
}
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 2c6f02c8edd5f1241b53b0c7e538e84a
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -6,9 +6,15 @@ using UnityEngine.UIElements;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// UI窗口
|
/// UI窗口
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ModuleUIWindow<T> : ModuleSingle<T> {
|
public abstract class ModuleUIWindow<Data> : MonoBehaviour {
|
||||||
/// <summary> 绑定的页面 </summary>
|
/// <summary> 绑定的页面 </summary>
|
||||||
public ModuleUIPage UIPage;
|
public ModuleUIPage ModuleUIPage;
|
||||||
|
/// <summary> 核心模块 </summary>
|
||||||
|
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||||
/// <summary> 绑定的根元素 </summary>
|
/// <summary> 绑定的根元素 </summary>
|
||||||
public abstract VisualElement Element { get; }
|
public abstract VisualElement Element { get; }
|
||||||
|
/// <summary> 打开窗口,并且传进参数 </summary>
|
||||||
|
public abstract void Open(Data data);
|
||||||
|
/// <summary> 关闭窗口 </summary>
|
||||||
|
public abstract void Close();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user