关于UI功能解锁,UI特效动画,UI tips的再思考

之前写过一篇这样的文章,但当时的思路可行性太低,最近又想了想pureMVC的消息机制,灵光一闪,似乎可以基于消息去实现三者。当然和PureMVC没多大关系,那个连UML图都相当复杂

首先所有的UI面板通过发送字符串消息来告知,是否触发了解锁检测,tips检测,动画特效。可以理解为这样的接口:

AsyncResult SendUIMessage(string message);

AsyncResult是我定义的一个类,专门得到异步结果。这样特效动画播放完的异步回调也直接返回了。

而除了特效以外,Tips和解锁检测都不需要用到返回值。

最后除了UI特效,可以把这些东西挂载到专门的节点下,通过UI消息去驱动。

时间: 2024-10-10 03:54:39

关于UI功能解锁,UI特效动画,UI tips的再思考的相关文章

Unity UI的功能解锁,红点Tips,特效触发的做法思考

首先解锁比较特殊,有明确的行为,80%都是判断角色等级,然后进行按钮灰显或者隐藏的操作. 而特效和Tips没有明确的行为. 主要需要取舍的2点是主动调用还是回调被动调用,被动调用意味着代码会很乱.没有一个统一的入口,但是主动调用需要传Object参数,也很麻烦. 首先我否决了在层级面板绑定的做法,还是传入路径,但是会初始化一下: public abstract class CBWidget : MonoBehaviour { public abstract void Init(object ho

Android UI之原生——(1)、Android UI入门及常见属性与现象

Android UI之原生--(1).Android UI入门及常见属性与现象 导读 :Android UI入门,对于很多人来讲都是比较简单的,教程也多如牛毛,但是这篇绝对和其他的不一样.从接触android开发就注定UI开发是一个一直需要研究的课题,简单的原生UI使用可能你已经掌握,也可能发现某些组件有着一些不爽,但是只要你搞懂原因,就可以了.实在觉得用着不爽,那么就让自己的UI开发能力变强,然后自己写个好点的.android UI开发需要先学会使用原生UI,然后在学会使用开源UI,最后才是自

OpenLayers学习笔记5——使用jQuery UI实现查询并标注(UI篇)

最近事情很多,老板给的压力也很大,经常出差,另外项目和个人研究还都要跟上,本月要交论文,还要写专利,只能抽时间来学习其他的东西了.关于OpenLayers的在博客中不会写太多具体的实现(网上有很多openlayers的博客,关于加载wms.标记.量测的,我这里就不再重复了),只是记录自己的开发学习经验和一些需要注意的问题,真正做开发的都知道,要想学好开发只能通过自己默默的多磨..关于WW的学习和开发已经搁置了好久了,等过去这段时间,打算好好学一下jogl,争取做一些粒子模拟出来,另外打算采用rc

(素材_源码) 猫猫学IOS(五)UI之360等下载管理器九宫格UI

猫猫分享,必须精品 先看效果 代码学习地址: 猫猫学IOS(五)UI之360等下载管理器九宫格UI 猫猫学IOS(五)UI之360等下载管理器九宫格UI http://blog.csdn.net/u013357243/article/details/44486609 下载地址:http://download.csdn.net/detail/u013357243/8516817 ps1:有想要源码的可以加猫猫微信znycat QQ也可以:1764541256 --视频学习资料素材免费分析,哎自己一

QT ui基础(一) QT dialog 及UI 关系

2016-09-17 19:41:20|  分类: QT QT ui基础(一)  QT dialog 及UI 关系 #ifndef MYWIDGET_H#define MYWIDGET_H #include <QWidget>//#include "mydialog.h"namespace Ui {    class MyWidget;}class MyDialog;class MyWidget : public QWidget{    Q_OBJECT public:  

Cocos2d-x-v3中3D网格特效动画的应用

Cocos2d-x-v3中3D网格特效动画的应用 一.网格特效的使用原理 基础的动作是对节点整体进行移动,变形等操作,网格特效的原理是将节点分割成多个尺寸相同的网格,根据改变每个网格块的属性使整体节点产生3D的效果. 二.网格特效的基本用法 在cocos2d-x中,v3的版本新引入了一个类NodeGrid,专门用来包装网格的特效,示例如下:     //获取屏幕尺寸     Size visibleSize = Director::getInstance()->getVisibleSize();

给listview加动画,让动画执行结束后再刷新

问题:当给listview的条目加动画时,例如添加一个条目或者移除一个条目,动画效果会和添加删除条目的逻辑同时进行,因为动画并不是阻塞式的,这样会造成动画还没有结束,条目已经添加或者移除,从而动画作用在下面一个条目上面. 解决办法:想办法让动画执行完了之后再进行条目的添加或者移除操作(也就是刷新数据适配器),可以通过设置动画监听来实现,将要添加或者删除条目的逻辑放到动画监听的方法中,可以放到动画结束时调用的方法中,这样就保证了动画先执行,然后才刷新数据适配器 holder.iv_lock.set

UGUI中粒子特效与UI的遮挡问题

问题背景: 在做主线任务时发现完成任务后的特效显示穿透上面的UI层,不美观,策划不乐意了,抓紧解决下 解决思路: 首先讲下影响渲染顺序的因素: 能够影响渲染顺序的因素有:1.Camera Depth     相机组件上设置的相机深度,深度越大越靠后渲染. 2.Sorting Layer      在Tags & Layers设置中可见 3.Order In Layer 相对于Sorting Layer的子排序,用这个值做比较时只有都在同一层时才有效.4.RenderQueue     Shade

iOS开发UI篇——Core Animation核心动画CAShapeLayer(绘制图形等)简介

重点: 获取绘制图形        Layer CAShapeLayer *shapeLayer = [CAShapeLayer layer];     设置图形有线颜色   [CAShapeLayer layer].strokeColor = [UIColor redColor].CGColor;      设置图形填充颜色   [CAShapeLayer layer].fillColor = [UIColor clearColor].CGColor;   设置图形线宽      [CASha