Unity3D NGUI UIButtonTween动画事件详解

来源:互联网 发布:windows文件监控 编辑:程序博客网 时间:2024/06/10 18:33

终于开始正式学习NGUI了~

看官方demo很多动画效果都很炫,今天研究了下终于有所顿悟,原来这些效果的全是靠 UIButton Tween 实现的。

下面翻译记录下各个属性的作用

UIButton Tween

Tween Target:被控制的物体,默认是自己。

Tween Group:控制的动画组 (控制Tween动画对一个的该属性)。

Trigger:触发此脚本的事件;(只有鼠标和触屏事件,键盘按键事件可以自己加。)

Play Direction:触发的事件 

  • Toggle:开/关  功能
  • Forward:开 功能
  • reverse:关 功能
Reset On Play:是否重播(如果开灯了,是否再从头重新播放一次开灯动画)
if Disabled On Play:如果被控制的物体是没有激活的
  • DoNothing:什么都不做~
  • EnableThenPlay:为了播放而激活它!
Disable When Finished:是否卸磨杀驴兔死狗烹忘恩负义过河拆桥!
  • DoNotDisable:什么都不干
  • DisableAfterReverse:卸磨之后,再杀驴!(隐藏不掉的原因:物体内组件的执行顺序由上而下执行 如 :- A物体有两个UIButtonTween组件,一个隐藏A物体,一个隐藏B物体。脚本在A物体上,隐藏A物体的UIButtonTween组件要在最后添加。)。
  • DisableAfterForward:
Include Chilren:是否带着孩子们一起玩
Event Receiver:使用“callWhenFinished↓’的游戏物体。
Call When Finished:执行完动画后要执行的函数名(拥有该函数的脚本组件必须在附加在“Event Receiver↑”游戏物体中)。
-------------------------------------------------------------- 添加键盘按键事件 ---------------------------------------------------------
[csharp] view plaincopyprint?
  1. /// <summary>   
  2.     /// duan:按键相应事件    
  3.     /// </summary>   
  4.     public bool isGetkey = false;  
  5.     public KeyCode getKey = KeyCode.None;  

[csharp] view plaincopyprint?
  1. void Update ()  
  2.     {  
  3.         //duan:判断是否按键    
  4.         if (isGetkey) {   
  5.             if(Input.GetKeyDown(getKey)){  
  6.                 Play(true);  
  7.             }  
  8.         }  
  9.   
  10.         ……  
  11.         ……  
  12.         ……  
  13. }  

如果只想要键盘时间不想要鼠标和触屏时间 那就给鼠标和触屏增加一个none的事件
[csharp] view plaincopyprint?
  1. public enum Trigger  
  2. {  
  3. <SPAN style="WHITE-SPACE: pre"> </SPAN>OnClick,  
  4.     OnHover,  
  5.     OnPress,  
  6.     ……  
  7.     ……  
  8.     None,  
  9. }