一套UGUI的小框架用一篇文章显然是不够的,因为会很长很长大约有上万字,想必读者也没有那个耐心一点点读完(主要是我也懒),所以我就将其分为三个部分
基础分析篇
功能撰写与优化篇
扩展与总结篇
我将其都放在了同一个专栏下面,有兴趣可以在阅读页面的侧边栏找到并阅读
我们都需要什么
直接上图
三个部分
我先创建出这三个类,具体实现待我细细分析
1.面板基类
其负责所有窗口的基础行为,比如加载(第一次实例化),关闭,再打开
因此很适合抽象类
C# 面向对象补全计划 两步分清抽象类和接口-CSDN博客
public abstract class BasePanel {//实例化窗口public void CreatWnd(string wndName,Transform canvas){}//打开窗口public void OpenWnd(){}//关闭窗口public void CloseWnd() {}
}
2.各种面板类
继承面板基类,不但有基类中的所有行为,还可以有自己的行为
public class TestPanel:BasePanel
{//在这里可以写TestWnd自己的逻辑
}
3.面板管理类
通过该类去管理所有面板,因为面板基类是被用来继承的,各种子类才是需要被控制的,当面板子类多的时候在其类中单独控制显然不太好,因此需要一个面板管理类
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;public class PanelManager:MonoBehaviour
{private void Start() {}private void Update() {}}