关于UI功能解锁,UI特效动画,UI tips的再思考
2015-07-20 19:06
483 查看
之前写过一篇这样的文章,但当时的思路可行性太低
首先所有的UI面板通过发送字符串消息来告知,是否触发了解锁检测,tips检测,动画特效。可以理解为这样的接口:
AsyncResult SendUIMessage(string message);
AsyncResult是我定义的一个类,是对所有异步操作的封装。这样特效动画播放完的异步回调也直接返回了。
而除了特效以外,Tips和解锁检测都不需要用到返回值。
最后除了UI特效,可以把这些东西挂载到专门的节点下,通过UI消息去驱动。
2016/2/12补充:
确实是用了消息管理器实现,因为只是在测试用例里试了下,暂时难说好坏,我写了一种支持延时接收的消息广播(消息管理器中),这样处理这些事件是非常不错的。
首先所有的UI面板通过发送字符串消息来告知,是否触发了解锁检测,tips检测,动画特效。可以理解为这样的接口:
AsyncResult SendUIMessage(string message);
AsyncResult是我定义的一个类,是对所有异步操作的封装。这样特效动画播放完的异步回调也直接返回了。
而除了特效以外,Tips和解锁检测都不需要用到返回值。
最后除了UI特效,可以把这些东西挂载到专门的节点下,通过UI消息去驱动。
2016/2/12补充:
确实是用了消息管理器实现,因为只是在测试用例里试了下,暂时难说好坏,我写了一种支持延时接收的消息广播(消息管理器中),这样处理这些事件是非常不错的。
相关文章推荐
- HDU1005 Number Sequence
- 常用bluetooth协议
- 常用bluetooth协议
- 深入浅出 Java Concurrency (20): 并发容器 part 5 ConcurrentLinkedQueue
- String StringBuffer StringBuilder区别
- Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Query was empty
- Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Query was empty
- 深入浅出 Java Concurrency (19): 并发容器 part 4 并发队列与Queue简介
- (L1)AudioService AudioManagerInternal , Ringer mode, stream uid
- CF 129C Statues
- autolayout 动态计算高度时 UILabel的preferredMaxLayoutWidth设置
- 关于uitableviewcell的accessoryType属性
- easyui删除多行问题
- UI线程与handle
- ajax调用期间添加蒙层blockUI
- 关于UIBarButtonItem的一点札记
- iOS-UITextField属性设置备忘
- Nasm Intro - Understand nasm by OpenH264 WelsCPUId
- UIControl
- Message、Handler、MessageQueue、Looper之间关系图文总结