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开发第十二 ...
随机推荐
- 关于android 5.0对开发带来的影响
由于google推出了android5.0的系统,在app的安装方式,权限的管理方面与之前的系统有较大的区别.自己做的app也有体会.现在记录一些要注意的东西,防止忘记: 1.5.0改变了对自定义权限 ...
- jquery 农历日历 可自适应
在网上找了许多大牛做的农历日历,但是不是不符合项目中的要求,就是本身就有问题有Bug ,把大牛门的做日历看了n遍 自己又改造了一遍得到了这个:随后日历又要做个自适应的长宽,又在js中改造代码..... ...
- 在MFC中使用GDI+的一般方法,以VC6.0编译器为例
1.载解压GDI+开发包: 2.正确设置include & lib 目录: 设置如下:VC6.0编译器菜单Tools->Options->Directories中添加inlude ...
- linux arch目录下处理器体系架构介绍
alpha 处理器Alpha 处理器最早由美国DEC 公司设计制造,在Compaq (康柏)公司收购DEC 之后,Alpha 处理器继续得到发展,并且应用于许多高档的Compaq 服务器上,HP (惠 ...
- java 获取当月第一天和最后一天 获取前一个月第一天和最后一天
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); //获取前月的第一 ...
- 利用nodejs的cheerio抓取网站数据
/*引入模块*/ var http = require('http') var url = 'http://www.cnblogs.com/txxt' var cheerio = require('c ...
- VS2008下,aspx页面设计模式消失,只有黑白字体
版权声明:本文为博主原创文章,未经博主允许不得转载. RT,在工具选项里面重新设定的时候,报错,说一部分文件无法安装. 寻找一晚上,终于有了解决方案,供以后参考. luanwey(大陆响尾蛇)(不做温 ...
- php工作笔记2-php编码效率
1.尽量静态化: 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍.当然了,这个测试方法需要在十万级以上次执行,效果才明显.其实静态方法和非静态方法的效率 ...
- PHP memory_get_usage()管理内存
PHP memory_get_usage()管理内存 我们在实际编码中,要想实现对内存的查看和操作,许多程序员们第一个想到的就是PHP memory_get_usage()这个PHP脚本内存函数. 下 ...
- rabbitMQ学习(五)
topic匹配模式,topic能满足匹配结果就行. 发送端: public class EmitLogTopic { private static final String EXCHANGE_NAME ...