当前位置:网站首页>One of event management
One of event management
2022-04-23 07:47:00 【youth who behaves like an adult】
public enum EUIMgrEvent
{
onUILogInOpend,
onUILogInClose,
onUIHintOpend,
onUIHintClose,
onUIWorkOpend,
onUIWorkClose,
onUIShopOpend,
onUIShopClose
}
First create several event types , Then add the event type , Trigger , Delete and other operations ..........
1. Create a dictionary to save events
Dictionary<EUIMgrEvent, Action<object, object[]>> _phList = new Dictionary<EUIMgrEvent, Action<object, object[]>>();
2. Add event
public void addEventHandler(EUIMgrEvent eventID,Action<object, object[]> handler)
{
if (_phList == null) return;
if (_phList.ContainsKey(eventID))
{
Debug.LogError(string.Format("error: event[ {0} ] already exists", eventID));
return;
}
_phList[eventID] = handler;
}
3. Delete event
public void delEventHandler(EUIMgrEvent eventID)
{
if (_phList == null) return;
if (!_phList.ContainsKey(eventID))
{
Debug.LogError(string.Format("error: event[ {0} ] not exists", eventID));
return;
}
_phList.Remove(eventID);
}
4. Triggering event
public void fireEvent(EUIMgrEvent eventID,object sender ,object[] args)
{
if (_phList == null) return;
if (!_phList.ContainsKey(eventID)){
return;
}
var action = _phList[eventID];
if (action == null) return;
action(sender, args);
}
5. Reset event system
public void Reset()
{
if (_phList == null) return;
_phList.Clear();
_phList = null;
}
版权声明
本文为[youth who behaves like an adult]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230626191374.html
边栏推荐
- C# 多个矩形围成的多边形标注位置的问题
- 11. Table and library management
- .NET 5 的新功能 What‘s new in .NET 5
- MySQL8.0 安装/卸载 教程【Window10版】
- 解决在docker中部署mysql8, 密码正确但无法登陆MySQL问题
- ABAP 从CDS VIEW 发布OData Service示例
- Implementation of MySQL persistence
- 驼峰命名对像
- SAP pi / PO rfc2restful publishing RFC interface is a restful example (proxy indirect method)
- js案例之求最大值,反转数组,冒泡排序
猜你喜欢

中间人环境mitmproxy搭建

SAP PI / Po rfc2restful Publishing RFC interface as restful examples (proxy indirect)

防抖和节流

SAP RFC_CVI_EI_INBOUND_MAIN BP主数据创建示例(仅演示客户)

Super classic & Programming Guide (red and blue book) - Reading Notes

移动端布局(3D转换、动画)

对js中argumens的简单理解

King glory - unity learning journey

SAP CR传输请求顺序、依赖检查

Authorization server (simple construction of authorization server)
随机推荐
[self motivation series] what really hinders you?
将指定路径下的所有SVG文件导出成PNG等格式的图片(缩略图或原图大小)
简单理解==和equals,String为什么可以不用new
ES6使用递归实现深拷贝
C# SmoothProgressBar自定义进度条控件
Install and configure Taobao image NPM (cnpm)
js之节点操作,为什么要学习节点操作
SAP pi / PO rfc2soap publishes RFC interface as WS example
2022.3.14 Ali written examination
unity UGUI判断点击在UI上和3D物体上的解决方案
如何判断点是否在多边形内(包含复杂多边形或者多边形数量很多的情况)
js之DOM学习三种创建元素的方式
4. Multi table query
js案例之求最大值,反转数组,冒泡排序
超级宝典&编程指南(红蓝宝书)-读书笔记
new的实现
Nacos / sentinel gateway current limiting and grouping (code)
Apache Hudi 如何加速传统的批处理模式?
Xamarin版的C# SVG路径解析器
Reflect on the limitations of event bus and the design and implementation of communication mechanism in component development process