NGUI界面动画
玩游戏的时候,点击一个按钮,可能会看到UI从某个位置飞进来,关闭之后又往该位置飞出!又或者一些更加复杂的运动轨迹。
我们的项目现在就是使用Animation/Animator来制作界面动画。
流程:由程序将界面导出package给美术,具体动画的编辑工作交给美术,然后美术编辑完之后给出对应界面的动画文件。(ps:最好是要确定好整个项目涉及的界面有哪些动画效果,具体界面的宽高都不变了之后再去制作界面动画,不然界面一改动大小、位置等都会影响动画效果!我们也是项目处于后期才开始制作这块的!),至于具体的实现过程可以参考网上的!
a.如果是使用Animator的话是直接在编辑器中附加到对象上,界面一激活显示就自动播放动画,完全不需要写代码去控制。
b.使用Animation,由于我们的界面统一继承一个基类,直接是在运行时显示界面的时候给每个基类对象添加animation组件,然后播放指定名字的动画!
----
本来感觉一切都很美好,因为实际在手机上看动画效果的话是达到预期的,但是界面动画会导致一个问题,就是界面一做完动画,如果界面上的元素不刷新一下(刷新还是会有问题,会感觉闪了一下,体验不好),那么处于拖拽面板(ScrollView)上的图素或文字总是会错位甚至不显示!现在由于时间紧迫,还没能花时间去仔细研究是什么问题!
解决方法除了上面说的刷新界面之外,还想到一个:就是在布局界面的时候,将要播动画的图素(例如背景图面板)与不做动画的图素分离开,因为我们最常用的界面动画就是飞入飞出,因此只要做动画的时候界面背景面板先显示去做相应的动画效果,完成了之后才去显示背景图上面的文字、图片等图素!这样文字、图片等就不会受动画的影响而错位或不显示!
另外,网上找了一下方法,试了一下:当界面做完动画之后,使用panel.alpha=0; panel.alpha=1;
比如:
public void Show()
{
Animation ani = PlayAnimation("xxxx");
...
panel.alpha = ;//原来是使用panel.gameObject.SetActive(false);
panel.alpha = ;//原来是使用panel.gameObject.SetActive(true);
}
效果比使用panel.gameobject.setactive(false);panel.gameobject.setactive(true)好,不会闪一下!但具体手机的效果还是有待验证!
2015.2.9
在手机上试了一下使用panel.alpha=0; panel.alpha=1;,不会出现闪屏的效果!
上述描述提到的问题,如果是由于我们使用的方法不当,有知道的朋友可以告知,不胜感激!
NGUI界面动画的更多相关文章
- (NO.00004)iOS实现打砖块游戏(二):实现游戏主界面动画
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 一个内容不错的游戏也要一个好的包装.玩家进入游戏时第一眼看到的是 ...
- NGUI Tween动画Scale与Transform冲突
NGUI中我们要同时完成Scale与Transform的效果,会发现动画并不是同我们想的那样运行的. 原因就是Tween Scale与Tween Transform的冲突调用. Tween Scale ...
- NGUI 界面自适应
关于 NGUI 的界面自动适应不同的手机分辨率,网上已经够多的了.如果你点进了这个网页,推荐一下这一篇吧: http://www.xuanyusong.com/archives/2536 下面是我自己 ...
- 萌货猫头鹰登录界面动画iOS实现分析
动画效果仿自国外网站readme.io的登录界面,超萌可爱的猫头鹰,具体效果如下图所示. 动画实现核心: 动画核心的是用到了iOS中UIView的transform属性,然后根据尺寸坐标对四张图片进行 ...
- Unity NGUI Tween动画回调不执行问题
最近工作中遇到了一个问题 NGUI的Tween动画完成 回调函数 偶尔不执行 偶现Bug 今天我仔细看了下代码发现 TweenPosition tempTween = varTar.GetCompon ...
- 安卓仿QQ红包领取详情界面动画
为了能清楚的看到这个效果,本人不惜几次花费重金给众群叼发放红包,来查看红包领取详情界面的动画效果,QQ效果如图: 图中我们可以看到,动画处的头像和文字是一起的,即同时并且是整体,注意,是整体进行缩放的 ...
- iOS界面动画特效
1.TableView的headView背景图片拉伸 - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup aft ...
- css3 简单界面动画
asdasdasdasda asdasdasdasda
- Android UI开发第四十一篇——墨迹天气3.0引导界面及动画实现
周末升级了墨迹天气,看着引导界面做的不错,模仿一下,可能与原作者的代码实现不一样,但是实现的效果还是差不多的.先分享一篇以前的文章,android动画的基础知识,<Android UI开发第十二 ...
随机推荐
- 软件测试之loadrunner学习笔记-02集合点
loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...
- JS 学习(三)DOM
HTML DOM(文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model).HTML DOM 模型被构造为对象的树. HTML DOM树: Java ...
- php命名空间和autoload
参考: 1.http://www.cnblogs.com/thinksasa/p/3423480.html PHP的命名空间 2.http://blog.jjonline.cn/phptech/15 ...
- AChartEngine 图表绘制
AChartEngine Android 平台的图表开发库, 能绘制 折线图, 饼图, 气泡图, 柱状图, 散点图, 面积图等统计图表. 这些我记录一下,柱状图.折线图和饼状图的小例子.有兴趣的朋友, ...
- leetcode-【中等题】2. Add Two Numbers
题目 You are given two linked lists representing two non-negative numbers. The digits are stored in re ...
- angularjs上传图片
通过AngularJS实现图片上传及缩略图展示(读取文件内容) AngularJS图片上传功能的实现(读取文件内容) AngularJs实现Multipart/form-data 文件的上传(上传文件 ...
- clipboard_monitor_in_win7
添加监听 AddClipboardFormatListener(this.Handle); 移除 RemoveClipboardFormatListener(this.Handle); #region ...
- C#操作access数据库
未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法 去http://download.microsoft.com/download/7/0/3/703ffbcb- ...
- Oracle重新装机后如何快速还原以前表和用户
本人使用的oracle10g 首先拷贝以前的oradata 文件夹 一:重新创建oracle数据库后手动关闭oracle所有服务 二:将oradata中新创建的数据库目录改名,d:\app\user\ ...
- web学习笔记
最近把web方面的学习笔记都放在了github的一个仓库里,这是链接:https://github.com/williamking/web-studying-note