NGUI控件说明(中文) Tweens

原文:http://www.tasharen.com/forum/index.php?topic=6760.0


概述


NGUI自带小而精的Tween库。

NGUI控件说明(中文) Tweens_第1张图片

可以右键widget之后在Tween菜单选择合适的选项来给它增加tween功能。或者通过NGUI菜单增加。或者直接通过名字来挂tween脚本。

新增的tween默认是active的,所以你点击Play后tween会运行。如果不想运行,勾选掉脚本名字那里的复选框。

所有的tween都继承自同样的基类(UITweener)并且有同样的基本功能。FromTo来表示开始和结束的值。Animation Curve用来与微调这两个值的变化过程。

Duration指定一次动画的时长。Start Delay进行延迟play。秒为单位。

Tween Group可以控制在同一个object上的多个tween触发哪个。播放时指定group ID。

你可以通过指定button上的OnClick部分调用tween的Play()函数。



挂一个UIPlayTween脚本(Attach -> Play Tween Script)实现高级的功能。提供更多的play时选项。 

NGUI控件说明(中文) Tweens_第2张图片

首先指定Tween Target。这个game object需要至少一个tween,这样才可以触发。Include Child来激活这个object的所有子节点tween。

与上面的tween类似,Tween Group让你选择性的激活tween。

Trigger condition指定什么行为触发tween。Play direction决定play方式。如果target时disabled,你可以选择激活它或者保持原状(这样你故意设置为disabled的object所包含的tween就不会立即播放)。

如果tween正在play,可以选择restart让它立即从头play、继续播放,或者之后之前的play结束的话才play。可以设置tween后disable掉target——用来切换菜单的时候很管用。

最后,如果想在tween结束的时候调用其他功能函数,拖拽一个game object到Notify属性里面,选择想要的函数。和所有的NGUI通知一样,函数需要声明为“public void FuncName (void)”类型。如下:



[C#]  纯文本查看  复制代码
?
1
2
3
4
public void MyNotification () 
     Debug.Log(UITweener.current.name + " has finished playing!" ); 
}

小贴士
通过调整Animation Curve成“U”的形状,可以做出一个值的变化是从from到to之后又回到from。
可以在OnFinished里面做Tween的链式触发,直接调用Play()函数。
直接用tween的Begin()函数来创建tween:
[C#]  纯文本查看  复制代码
?
1
TweenPosition.Begin(tweenGameObject, duration, targetPosition);


类文档
http://tasharen.com/ngui/docs/class_u_i_tweener.html

你可能感兴趣的:(NGUI控件说明(中文) Tweens)