一个被名字耽误了的理念棒棒的 UI 框架。
GitHub 上的工程多如繁星,有些好的仓库,但凡不经意间错过了就很难找回,故稍作采撷,希望能帮助到有心人。
本文集以一个小的功能点为单位行文,也便于拾取罢!
简介:
笔者今天推荐的仓库叫 ScreenManager。- 屏幕管理器
虽然名称这么叫,当其实啊这货是一个 UI框架,只不过呢它支持 UI Page的栈(Stack)可视化,这个设计思路就很值得借鉴嘛!
功能:
-
编辑器模式下页面的栈信息在 Inspector中可视
- 虽然有Inspector栈数据可视,但也完全可以由代码调用。
- 支持多图层(分层)的栈导航(alertbox/消息弹窗 > popup/弹窗 > main/主UI页面 )
- 支持页面对象的复用
- 支持形如 弹窗和消息弹窗的克隆复用
- 代码简洁优美,没有引入第三方库。
- 支持为页面定义默认选中的按钮.
-
支持在Scene 窗口 唤出所有 配置OK的页面,方便调试。
- 支持页面自动引导与自动停止引导。
-
BaseScreen
支持扩展,方便扩展自己的 页面。 -
支持预设 Animation动画 / Tween动画
- 已测试支持移动端。
使用:
screenmgr.Show("MainMenu"); //通过字符串调用指定页面
screenmgr.ShowPopup<Popup>("Alertbox").Message = "Custom Alert Text"; //泛型调用消息弹窗并指定消息
screenmgr.HideAll(); // 隐藏Page 的API
演示:
链接:
Xerios/ScreenManager: Flexible way to manage screens with transitions for Unity
结语:
简约而不简单的 UI框架,支持预设过渡动画,支持预设高亮按钮,支持页面栈的可视化,一切的一切都非常值得安利一下,不管是出于借鉴学习还是直接使用,希望对同学们有所帮助吧!
本文集持续更新ing,喜欢记得点赞关注哦!