文章目录
1. 需求分析
2 准备工作
设置Canvas为摄像机模式
3 面板基类
设置面板淡入淡出的效果
设置抽象函数让子类继承时实现
设置一个标识符表示是否显示
创建显示和隐藏面板时的函数
设置一个事件,让淡出完成时删除自己
4 UI 管理器
创建单例模式
在创建新面板时,得到Canvas对象
设置 Canvas不被删除,将eventSystem和Camera(渲染UI的)拖入Canvas
设置显示面板函数
隐藏面板,isFade是需不需淡出特效
找到面板
修改一下显示面板的逻辑,如果已经创建,则不需要再显示面板
5 提示面板
5.1 拼面板
5.2 面板逻辑
提供外部用的修改文字的函数
创建一个主入口脚本Main
6 登陆面板
6.1 拼面板
6.2 逻辑相关
登陆数据结构
创建 登陆管理器
提供登陆方法供外部使用
创建panel
两TOG框
重写 showMe函数
7 注册面板
7.1
拼面板
7.2 面板逻辑
创建数据结构类
在登陆管理器类获取
在构造函数中赋值
提供方法给外部使用
创建面板脚本
在LoginPanel中提供方法设置用户名和密码(用于注册成功后,自动填写
重写init函数,增加事件监听
串联登陆面板,在登陆面板的点击注册事件中添加显示
处理点击登陆的逻辑
8 服务器面板
8.1 拼面板
8.2 代码逻辑
重写ShowMe函数,让其显示的时候显示服务器
在LoginData里增加一个记录上次登陆服务器的内容
在登陆面板中串联
9 选服面板
9.1 拼面板
水平自适应
垂直自适应
9.2 数据准备
配置文件
在BeJson中转换为Json
存放json文件到streamingAssets中
在LoginMgr中获取
创建单个服务器数据
在构造函数中
9.3 左侧按钮逻辑
提供一个初始化ID的函数
9.4 右侧按钮功能
提供给外部更新数据的函数
打图集
加载图集
9.5 动态创建按钮
9.5.1 初始化左侧图标
初始化数据
增加serverPanel的按钮监听
9.5.2 显示上次登陆服务器
9.5.3 更新右侧SV
点击右侧物体后隐藏选服面板
9.5.4 点击左侧更新右侧
9.5.5 记录上次登陆ID
10 串联各面板
判断服务器面板和选服面板
如果登陆过,进入服务器面板
如果从未登陆过,则进入选服面板
在LoginPanel中选择显示
增加函数清除上一个登陆玩家的数据
在注册成功后调用
在点击进入游戏后,存储选择的服务器信息
把背景图改成Panel
挂载脚本
在Main脚本中显示
进入游戏时隐藏panel
自动登陆
增加返回后 关闭自动登陆
11 图集打包
选择文件夹打包