Unity UI框架开发(1)--框架介绍

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chy_xfn/article/details/52831191

学习知识,分享知识。

  1. 列记录下自己经常使用的这个UI框架。首先说下这个UI框架整体吧,该框架主要实现了UI的的显示、隐藏、按钮点击、UI数值更新,这也是大多数游戏UI的功能。

  2. 该框架主要分三个部分来理解,分别是窗口(window)、视图(view)、控制(control),看起来有点像mvc框架是吧,但这里并没有实现model数据这块,现在只是实现UI的一些显示功能,并不需要做Model数据处理内容,所以暂时不管。如果加上model模块,那么窗口和视图可以合成View的。

  3. 细说三部分

    1、窗口(window):为了将UI分类,将其分成相应的窗口理解,如:商店窗口、设置窗口等;
    2、视图(view):每个窗口内的具体UI视图,一个窗口可有多个UI视图,如:商店窗口有显示所有商品的视图、然后选择单个商品时又可以弹出一个商品详情视图,点击购买又可以弹出一个购买视图。当然,把这些都放在同一视图也行,但是就是显得脚本程序臃肿了,毕竟分类管理能让程序更直观清晰。
    3、控制(control):用来实现UI的创建、记录、显示和隐藏等功能的具体逻辑。

代码实现

  • 根据上面三部分可以创建三个类UIBaseWindow(窗口)、UIBaseView(视图)、UIWindowCtrl(控制);
    详细如下图:

    这里写图片描述
    

1、首先我们看看UIBaseWindow类下包含四个主要方法,由命名可以看出其功能分别是窗口的创建、显示、隐藏、重现;下面几个子类则可以直接继承这些功能并使用,这几个子类分别是主界面、商城、设置等窗口。子类的作用主要是用来初始化对应显示的视图。

2、下面看看UIBaseView类,该类的作用则是包含了具体的UI视图了,该基类也自带了几个非常重要的方法,包括Veiw的初始化、获取当前View所属窗口、设置View所属窗口、View的显示和隐藏,而继承该基类的子类除了显示具体的UI外,还扩展了按钮的点击事件;从上图看到多了一个叫CommonView的通用视图类,因为我们的View UI通常都是共用一个父窗口的,就是外部轮廓一致的,只有标题不同而已,而且窗口都会带有一个关闭按钮的,那么我们就可以把这些提取出来做成一个通用的CommonView视图了。

3、最后一个UIWindowCtrl类,顾名思义就是UI总控制类,包括窗口的具体创建逻辑、已有窗口的存储、已有窗口重现的判断逻辑等功能都是写在这个类。该类是个管理类,不允许继承的。

好了,这次就先写到这吧,具体代码下篇在详细介绍。

猜你喜欢

转载自blog.csdn.net/chy_xfn/article/details/52831191