Skip to content

🏝 a little framework base on unity and ugui,we use bridges to connect one panel to another panel

Notifications You must be signed in to change notification settings

zouhunter/unity-bridge-ui-framework

Repository files navigation

《BridgeUI》

基于UGUI的一款综合性UI交互框架


一.主要特性

  • 可视化UI节点编辑,直观明了
  • 分离界面开闭相关属性,及界面逻辑属性
  • 支持多层级。自带空间深度显示
  • 自带动画接口,可扩展并动态绑定
  • 支持面板间互斥,回滚等常见操作
  • 批量打开界面,及批量关闭保存更新预制体
  • 支持xLua文本各种加载方式(测试)
  • 基于mvvm模式,可动态绑定ViewModel
  • 支持非MVVM模式(厚View)
  • 分别缓存GameObject,及逻辑代码
  • 支持多种资源加载方式(Oringal,AssetBundle,Resources
  • 支持运行时加载面板关联组

二.下载注意

  • 需要同时下载:unity-nodegraph-frame
  • 使用时请确保unity版本一致或更高

三.主要接口 (IUIFacade)

  • void Open(string panelName, object data = null);
  • void Open(IUIPanel parentPanel, string panelName, object data = null);
  • void Open(string panelName, IPanelVisitor uiData);
  • void Open(IUIPanel parentPanel, string panelName, IPanelVisitor uiData);
  • bool IsPanelOpen(string panelName);
  • bool IsPanelOpen(string panelName, out T[] panels);
  • bool IsPanelOpen(IPanelGroup parentGroup, string panelName);
  • bool IsPanelOpen(IPanelGroup parentPanel, string panelName, out T[] panels);
  • void Hide(string panelName);
  • void Hide(IPanelGroup parentGroup, string panelName);
  • void Close(string panelName);
  • void Close(IPanelGroup parentGroup,string panelName);
  • void RegistCreate(UnityAction onCreate);
  • void RegistClose(UnityAction onClose);
  • void RemoveCreate(UnityAction onCreate);
  • void RemoveClose(UnityAction onClose); (以上是IUIFacace提供的接口,除此之外还有IUIPanel,ViewModel等重要接口需要掌握后方能正确使用)

四.使用流程

  • 节点制作
graph TD
A[Canvas下] -->|添加控件| B(PanelGroup)
F[创建UIGraph]-->|添加|B
B --> |点击| C[打开UIGraph]
C -->|创建UI节点| D[绑定预制体]
Loading
  • 其他功能 (可参考Demo)

五.后记

由于github上传困难,本工程将不再维护,望周知!

About

🏝 a little framework base on unity and ugui,we use bridges to connect one panel to another panel

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published