BB:Itween是真心不好用!

- 透明度动画

void Start () {
//键值对儿的形式保存iTween所用到的参数
Hashtable args = new Hashtable(); //最终透明度
args.Add("alpha", );
//最终透明度,alpha和amount都是最终透明度,amount优先于alpha.内部实现是仅改变Color.a的值,再调用对应的Color方法.
args.Add("amount", );
//是否包括子对象
args.Add("includechildren",true);
//当效果是应用在renderer(渲染器)组件上时,此参数确定具体应用到那个以命名颜色值上
args.Add("namedcolorvalue", iTween.NamedValueColor._Color); //动画的时间
args.Add("time", 10f);
//延迟执行时间
args.Add("delay", 0.1f); //这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中
args.Add("easeType", iTween.EaseType.easeInOutExpo);
//三个循环类型 none loop pingPong (一般 循环 来回)
//args.Add("loopType", "none");
//args.Add("loopType", "loop");
args.Add("loopType", iTween.LoopType.pingPong); //处理动画中的事件。
//开始发生动画时调用AnimationStart方法,5.0表示它的参数
args.Add("onstart", "AnimationStart");
args.Add("onstartparams", 5.0f);
//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,
//那么就得在接收对象的脚本中实现AnimationStart方法。
args.Add("onstarttarget", gameObject); //动画结束时调用,参数和上面类似
args.Add("oncomplete", "AnimationEnd");
args.Add("oncompleteparams", "end");
args.Add("oncompletetarget", gameObject); //动画中调用,参数和上面类似
args.Add("onupdate", "AnimationUpdate");
args.Add("onupdatetarget", gameObject);
args.Add("onupdateparams", true); iTween.FadeTo(btnBegin, args);
} //动画开始时调用
void AnimationStart(float f)
{
Debug.Log("start :" + f);
}
//动画结束时调用
void AnimationEnd(string f)
{
Debug.Log("end : " + f); }
//动画中调用
void AnimationUpdate(bool f)
{
Debug.Log("update :" + f); }

- 移动动画

void Start () {  

        //键值对儿的形式保存iTween所用到的参数
Hashtable args = new Hashtable(); //这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中
//例如移动的特效,先震动在移动、先后退在移动、先加速在变速、等等
args.Add("easeType", iTween.EaseType.easeInOutExpo); //移动的速度,
//args.Add("speed",10f);
//移动的整体时间。如果与speed共存那么优先speed
args.Add("time",10f);
//这个是处理颜色的。可以看源码的那个枚举。
args.Add("NamedValueColor","_SpecColor");
//延迟执行时间
args.Add("delay", 0.1f); //是否让游戏对象始终面朝路径行进的方向,拐弯的地方会自动旋转。
args.Add("orienttopath", true);
//移动的过程中面朝一个点,当“orienttopath”为true时该参数失效
args.Add("looktarget",Vector3.zero);
//游戏对象看向“looktarget”的秒数。
args.Add("looktime",1.1); //游戏对象移动的路径可以为Vector3[]或Transform[] 类型。可通过iTweenPath编辑获取路径
Vector3[] testPath = { new Vector3(, , ), new Vector3(, , ), new Vector3(, , ), new Vector3(, , ), new Vector3(, , ) };
args.Add("path", testPath);
//是否移动到路径的起始位置(false:游戏对象立即处于路径的起始点,true:游戏对象将从原是位置移动到路径的起始点)
args.Add("movetopath", false); //当包含“path”参数且“orienttopath”为true时,该值用于计算“looktarget”的值,表示游戏物体看着前方点的位置,(百分比,默认0.05)
args.Add("lookahead",0.01); //限制仅在指定的轴上旋转
args.Add("axis", "x");
//是否使用局部坐标(默认为false)
args.Add("islocal", false); //三个循环类型 none loop pingPong (一般 循环 来回)
//args.Add("loopType", "none");
//args.Add("loopType", "loop");
args.Add("loopType", iTween.LoopType.pingPong); //处理移动过程中的事件。
//开始发生移动时调用AnimationStart方法,5.0表示它的参数
args.Add("onstart", "AnimationStart");
args.Add("onstartparams", 5.0f);
//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,
//那么就得在接收对象的脚本中实现AnimationStart方法。
args.Add("onstarttarget", gameObject); //移动结束时调用,参数和上面类似
args.Add("oncomplete", "AnimationEnd");
args.Add("oncompleteparams", "end");
args.Add("oncompletetarget", gameObject); //移动中调用,参数和上面类似
args.Add("onupdate", "AnimationUpdate");
args.Add("onupdatetarget", gameObject);
args.Add("onupdateparams", true); // x y z 标示移动的位置。
args.Add("x",-);
args.Add("y",);
args.Add("z",);
//当然也可以写Vector3
//args.Add("position",Vectoe3.zero);
//最终让改对象开始移动
iTween.MoveTo(btnBegin, args);
}
//对象移动中调用
void AnimationUpdate(bool f)
{
Debug.Log("update :" + f);
}
//对象开始移动时调用
void AnimationStart(float f)
{
Debug.Log("start :" + f);
}
//对象移动时调用
void AnimationEnd(string f)
{
Debug.Log("end : " + f);
}

- 缩放动画

void Start () {  

       //键值对儿的形式保存iTween所用到的参数
Hashtable args = new Hashtable(); //放大的倍数
args.Add("scale", new Vector3(, , ));
//args.Add("scale", msgNotContinue.transform);
// x y z 标示放大的倍数
args.Add("x", );
args.Add("y", );
args.Add("z", ); //动画的速度
//args.Add("speed",10f);
//动画的时间
args.Add("time", 10f);
//延迟执行时间
args.Add("delay", 0.1f); //这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中
args.Add("easeType", iTween.EaseType.easeInOutExpo);
//三个循环类型 none loop pingPong (一般 循环 来回)
//args.Add("loopType", "none");
//args.Add("loopType", "loop");
args.Add("loopType", iTween.LoopType.pingPong); //处理移动过程中的事件。
//开始发生动画时调用AnimationStart方法,5.0表示它的参数
args.Add("onstart", "AnimationStart");
args.Add("onstartparams", 5.0f);
//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,
//那么就得在接收对象的脚本中实现AnimationStart方法。
args.Add("onstarttarget", gameObject); //动画结束时调用,参数和上面类似
args.Add("oncomplete", "AnimationEnd");
args.Add("oncompleteparams", "end");
args.Add("oncompletetarget", gameObject); //动画中调用,参数和上面类似
args.Add("onupdate", "AnimationUpdate");
args.Add("onupdatetarget", gameObject);
args.Add("onupdateparams", true); iTween.ScaleTo(btnBegin, args);
} //动画开始时调用
void AnimationStart(float f)
{
Debug.Log("start :" + f);
}
//动画结束时调用
void AnimationEnd(string f)
{
Debug.Log("end : " + f);
}
//动画中调用
void AnimationUpdate(bool f)
{
Debug.Log("update :" + f);
}

- 值变化动画

void Start () {
//键值对儿的形式保存iTween所用到的参数
Hashtable args = new Hashtable();
//插值的起点和终点,数据类型可为 float、double、Vector3、Vector2、Color、Rect
args.Add("from", 0.0f);
args.Add("to", 1.0f); //插值变化的速度,
//args.Add("speed",10f);
//插值变化的整体时间。如果与speed共存那么优先speed
args.Add("time", 10f);
//延迟执行时间
args.Add("delay", 0.1f);
//这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中
args.Add("easeType", iTween.EaseType.easeInOutExpo);
//三个循环类型 none loop pingPong (一般 循环 来回)
//args.Add("loopType", "none");
//args.Add("loopType", "loop");
args.Add("loopType", iTween.LoopType.pingPong); //处理移动过程中的事件。
//开始发生变化时调用AnimationStart方法,5.0表示它的参数
args.Add("onstart", "AnimationStart");
args.Add("onstartparams", 5.0f);
//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,
//那么就得在接收对象的脚本中实现AnimationStart方法。
args.Add("onstarttarget", gameObject); //变化结束时调用,参数和上面类似
args.Add("oncomplete", "AnimationEnd");
args.Add("oncompleteparams", "end");
args.Add("oncompletetarget", gameObject); //变化过程中(ValueTo必写参数)
args.Add("onupdate", "AnimationUpdata");
args.Add("onupdatetarget", gameObject); //ValueTo不可用
args.Add("onupdateparams", btnBegin); iTween.ValueTo(btnBegin, args);
}
public void AnimationUpdata(object obj)
{
float per = (float)obj;
//改变按钮透明度
btnBegin.transform.FindChild("Background").GetComponent<UISprite>().alpha = per;
} //动画开始时调用
void AnimationStart(float f)
{
Debug.Log("start :" + f);
}
//动画结束时调用
void AnimationEnd(string f)
{
Debug.Log("end : " + f);
}

这里附上一个协程的值变化方式

Itween的代码使用方法 - 01的更多相关文章

  1. 063 01 Android 零基础入门 01 Java基础语法 08 Java方法 01 无参无返回值方法

    063 01 Android 零基础入门 01 Java基础语法 08 Java方法 01 无参无返回值方法 本文知识点:无参无返回值方法 无参无返回值方法 案例 为什么使用方法?--方便复杂问题调用 ...

  2. SQL中批量删除被注入的恶意代码的方法

    下文将为您介绍SQL中批量删除被注入的恶意代码的方法,供您参考,如果您也遇到了这样的问题,不妨一看,相信对您会有所帮助. 1,如果你的数据表很少的话,那么写几条简单的sql就搞定了 对于表中的nvch ...

  3. JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法(转)

    原文:JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法 jquery-easyui是一个基于jquery的图形界面插件,利用easyui可以创建很多好看的网页界面 ...

  4. SharePoint2010 自定义代码登录方法

    转:http://yysyb123.blog.163.com/blog/static/192050472011382421717/ SharePoint2010 自定义代码登录方法 (自定义Form验 ...

  5. 改善EF代码的方法(下)

    本节,我们将介绍一些改善EF代码的方法,包括编译查询.存储模型视图以及冲突处理等内容. > CompiledQuery 提供对查询的编译和缓存以供重新使用.当相同的查询需要执行很多遍的时候,那么 ...

  6. 通过浏览器F12开发工具快速获取别的网站前端代码的方法

    通过浏览器F12开发工具快速获取别的网站前端代码的方法 说明:直接另存为网页是比较老的做法,会有很多没用的东西下载下来.通过F12开发工具,sources获取到的是比较好的,有目录结构的源文件.

  7. 基于git命令的代码统计方法

    基于git命令的代码统计方法 没什么好说的,基于git log命令,使用前提是安装了git ...... .统计所有人代码量 统计所有人代码增删量,拷贝如下命令,直接在git bash等终端,git项 ...

  8. 二十三、详述 IntelliJ IDEA 中恢复代码的方法「进阶篇」

    咱们已经了解了如何将代码恢复至某一版本,但是通过Local History恢复代码有的时候并不方便,例如咱们将项目中的代码进行了多处修改,这时通过Local History恢复代码就显得很麻烦,因为它 ...

  9. 二十二、详述 IntelliJ IDEA 中恢复代码的方法

    在咱们正常开发项目的时候,难免遇到在开发过程中由于某种原因,想要将代码恢复到前一版本的情景.特别是在咱们删除了某些代码,想要恢复之前删除的代码的时候,了解这个在 IntelliJ IDEA 中恢复代码 ...

随机推荐

  1. leetCode21: 合并两个有序列表

    将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1->2- ...

  2. CentOS 7 实现ssh无密码登录

    cd ~ 进入根目录. (使用ls -a或者 ls -la 能够看到当前文件夹下的所有文件包含隐藏文件夹等) 我们首先使用ls -la  发现并没有.ssh的文件夹存在. 在终端输入   ssh lo ...

  3. 3.1链表----链表(Linked List)入门

    在分析链表之前,我们先来对之前的动态数组.栈.队列总结一下: (1)底层依托于静态数组 (2)依靠resize解决固定容量问题 (3)是一种假的的动态数据结构 1.什么是链表 可以从以下两个部分来理解 ...

  4. GDI+_入门教程【一】

    GDI For VisualBasic6.0 [一]文件下载:GDI+ For VB6[一] 简单绘图实例演示百度网盘 1 '以下为作者[vIsiaswx]的教程 '(该教程发布的原地址已无法访问,此 ...

  5. 在chrome console添加jQuery支持

    有时候想在chrome console使用jq,那么下面这段代码就可以完美解决问题了. var script = document.createElement('script');script.src ...

  6. SQL Server error

    原因:文件没有权限 出错: TITLE: Microsoft SQL Server Management Studio------------------------------ Attach dat ...

  7. xmlhttprequest 1.0和2.0的区别,from qq前端哥

    阮一峰好文:http://www.ruanyifeng.com/blog/2012/09/xmlhttprequest_level_2.html

  8. 关于php条形码生成(barcode),修改样式

    今天听错了需求,以为要重新设计条形码,第一次制作这个,经过搜索使用的barcode这个第三方的,具体使用步骤网上很多就不在这里详细介绍了.主要是今天遇到的样式修改问题: barcode经过查看是无法自 ...

  9. Eclipse常用快捷键(用到想到随时更新)

    原始链接:https://jingyan.baidu.com/article/fedf073771323235ac8977f1.html Shift+Enter在当前行的下一行插入空行(这时鼠标可以在 ...

  10. 集群环境下定时调度的解决方案之Quartz集群

    集群环境可能出现的问题 在上一篇博客我们介绍了如何在自己的项目中从无到有的添加了Quartz定时调度引擎,其实就是一个Quartz 和Spring的整合过程,很容易实现,但是我们现在企业中项目通常都是 ...