- 浏览: 1056537 次
- 性别:
- 来自: 南昌
文章分类
- 全部博客 (276)
- 生活 (1)
- 代码之美 (22)
- Media (7)
- Android Widget (3)
- Android Intent (1)
- Android Activity (4)
- UI event handle--UI事件处理机制 (2)
- Java基础知识 (12)
- android Databases (5)
- Android 系统知识 (70)
- 平常遇到的问题与解决方法 (38)
- Android TextView/EditView (2)
- Thinking Java (1)
- android webkit (6)
- JSON (1)
- XML (4)
- HTTP (1)
- Google Weather API (1)
- android 2.3 NFC (10)
- android app (20)
- android framework (7)
- C++ (2)
- android System (5)
- Pthread (1)
- Wifi (8)
- Unix/Linux C (8)
- Android 4.0 (1)
- Mail (1)
- Smack 源码学习 (4)
- iOS (4)
- Android (1)
- git (1)
- Gallery3d (2)
- React-Natice (1)
最新评论
-
dd18349182956:
你是用的smack哪个版本?我用的smack4.1.3和sma ...
关于socket长连接的心跳包 -
xukaiyin:
全英文
getApplicationContext()与this,getBaseContext() -
裂风矢:
...
<category android:name="android.intent.category.DEFAULT" /> 惹的祸 -
xanthodont:
mark一下
XMPP——Smack -
Evilover3:
mark一下,学习了
XMPP——Smack
转自:http://hi.baidu.com/wendaoeryu/item/203d40efbf86583f5a7cfbcf
Android—Animation
一.Animation简介
1.简介 Animation为Android提供了一系列的动画效果:旋转、缩放、移动、淡入淡出,这些动画效果可以应用于绝大多数控件。
2.分类
Animation可分为两类:
TweenedAnimations:渐变动画,具体就是旋转、缩放、移动、淡入淡出效果。
Frame-by-FrameAnimations:将一系列Drawable序列一次播放,类似于电影模式,常用来进行定时更新背景等操作。
3.实现方法
Animation有两种实现方法:
在xml文件中实现,优点是复用性好,可维护性好,多个控件可以使用同一个xml文件。缺点是由于xml文件不进行编译,所以排错比较难。
在代码中实现,优点是排错很方便,缺点是重复代码多,可复用性低。
二.TweenedAnimations
1.效果
Alpha:淡入淡出
Scale:缩放
Rotate:旋转
Translate:移动
2.实现
在代码中实现
(1)创建AnimationSet对象(可以柔和多个动画效果)
AnimationSet是Animation的子类,一个AnimationSet包含了一系列的Animation,对AnimationSet属性的设置将会应用于其中的每一个Animation。
AnimationSet animationSet=new AnimationSet(true);
(2)根据需要创建相应的Animation对象(根据4种效果有4个子类)
淡入淡出: AlphaAnimation alphaAnimation=new AlphaAnimation(1,0); //两个参数分别表示初始透明度和目标透明度,
//1表示不透明,0表示完全透明。
旋转:RotateAnimation rotateAnimation=new RotateAnimation(0,360,Animation.RELATIVE_TO_PARENT,1f,Animation.RELATIVE_TO_PARENT,1f);
参数含义:
参数1:初始角度,0表示图片当前位置。
参数2:目标角度。
参数3、4、5、6定义了旋转的圆心
参数3:X坐标的类型,有三种默认值:RELATIVE_TO_PARENT 相对于父控件
RELATIVE_TO_SELF 相对于符自己
RELATIVE_TO_ABSOLUTE 绝对坐标
参数4:X轴偏移比例,变化范围是0f—1f
参数5:Y坐标的类型,同样也有三种默认值
参数6:Y轴偏移比例,变化范围是0f—1f
缩放:ScaleAnimation scaleAnimation=new ScaleAnimation(1,0.1f,1,0.1f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
参数含义:
参数1,2:X轴缩放比例—从1缩放到0.1
参数3,4:Y轴缩放比例—从1缩放到0.1
参数5,6:X轴轴心点(类型和比例)
参数7,8:Y轴轴心点(类型和比例)
移动:TranslateAnimation translateAnimation=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0.5f);
参数含义:
参数1,2:X轴的开始位置
参数3,4:X轴的结束位置
参数5,6:Y轴的开始位置
参数7,8:Y轴的结束位置
(3)为Animation配置数据
这里说明一下TweenedAnimations的几个通用属性
.setDuration(long durationMills); //动画执行的时间,单位是毫秒。
.setFillAfter(boolean fillAfter); //设为true,则动画完成后停留在结束状态
.setFillBefore(boolean fillBefore); //设为true,则动画完成后停留在初始状态
.setStartOffset(long startOffset); //动画执行前的等待时间
.setRepeatCount(int repeatCount); //动画执行重复的次数
(4)将Animation对象加入AnimationSet中
animationSet.addAnimation(alphaAnimation);
(5)使用控件对象开始执行AnimationSet
***.StartAnimation(animationSet);
在xml中实现
(1)在res目录下新建anim文件夹
(2)在anim中创建xml文件,并首先加入set标签:
<set xmlns:android=“http://schemas.android.com/apk/res/android”
android:interpolator="@android:anim/accelerate_interpolator">
</set>
(3)在set标签中可加入rotate、alpha、scale或translate等标签。
例:
<rotate
android:fromDegrees="0" //起始角度
android:toDegrees="360" //目的角度,这里的角度可以写负数,这时会逆时针旋转
android:pivotX="%50" //X轴的旋转圆心,50,则对应RELATIVE_TO_ABSOLUTE ,50%,则对
//应 RELATIVE_TO_SELF ,50%p,则对应RELATIVE_TO_PARENT 。
android:pivotY="%50" //Y轴的旋转圆心
>
这些标签的具体使用可以查阅Android帮助文档。
(4)在代码中使用AnimationUtils装载xml,并生成Animation对象
Animation animation=AnimationUtils.loadAnimation(MainActivity.this,R.anim.***); //装载指定的xml文件
3.关于Interpolator
(1)简介
Interpolator定义了动画的速率,几种默认的Interpolator如下:
AccelerateInterpolator:动画开始时比较慢,然后逐渐加速。
DecelerateInterpolator:动画开始时比较快,然后逐渐减速。
AccelerateDecelerateInterpolator:动画开始时和结束时比较慢,中间过程加速。
LinearInterpolator:动画匀速进行。
CycleInterpolator:动画循环播放指定次数,速率沿着正弦曲线改变。
(2)实现
定义在代码中:
AnimationSet animationSet =new AnimationSet (true); //这里设置为true,则为animationSet 设置的Interpolator将
//应用于animationSet 中的所有animation对象。
animationSet .setInterpolator(new AccelerateInterpolator);//为animationSet 设置Interpolator。
或者:
AnimationSet animationSet =new AnimationSet (false);
animation1 .setInterpolator(new AccelerateInterpolator);
animation2.setInterpolator(new AccelerateInterpolator);
...... //为每一个animation对象设置Interpolator。
定义在xml中:
在set标签中添加属性,
android:shareInterpolator="true" //设置为true,则这时设置的Interpolator适用于标签中的所有动画。
android:interpolator="@android:anim/accelerate_interpolator” //为set设置Interpolator。
或者:
android:shareInterpolator="false" //设置为false,则需为每一个动画添加interpolator属性。
三.Frame-By-FrameAnimations
1.实现
(1)在drawable文件夹下创建xml文件:
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlms:android="http://schemas.android.com/apk/res/android"
android:onshot="false">
<item android:drawable=""@drawable/pic1 android:duration="500" />
<item android:drawable=""@drawable/pic2android:duration="500" />
<item android:drawable=""@drawable/pic3android:duration="500" />
</animation-list>
这个文件就定义了需要一次播放的图片资源,每一个<item>就是一个资源,drawable属性就是资源图片,duration指的是播放的时长。
(2) 代码中添加:
imageView.setBackgroundResource(R.drawable.***); //将创建的的xml装载进imageView
AnimationDrawable animationDrawable=(AnimationDrawable)imageView.getBackground();
animationDrawable.start(); //启动动画
四.LayoutAnimaionController
1.简介
LayoutAnimaionController为Layout或者viewGroup里的控件设置动画效果,特点是它会使其中的每个控件都有相同的动画效果,这些控件的动画效果可以在不同的时间显示出来。
2.实现(结合ListView使用)
LayoutAnimaionController同样即可以在代码中设置,也可以在xml中设置。
在代码中:
(1)创建Animation对象,使用构造函数或者装载xml都可以。
(2)创建LayoutAnimaionController对象
LayoutAnimaionController lac=new LayoutAnimaionController(animation);
(3)设置属性
lac.setOrder(LayoutAnimaionController .ORDER_NORMAL);//设置顺序
有三种默认顺序:
LayoutAnimaionController .ORDER_NORMAL // 顺序
LayoutAnimaionController .ORDER_REVERSE //反序
LayoutAnimaionController .ORDER_RANDOM //随机
lac.setDelay(***f);//设置执行动画的延迟时间,即时间间隔,单位是秒
(4)为ListView设置
listView.setLayoutAnimation(lac);
在xml文件中:
(1)在res/anim文件夹中创建xml文件
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android“
android:delay="0.5" //执行动画的延迟时间,即时间间隔,单位是秒
android:animationOrder="random"/"normal"/"reverse" //执行顺序
android:animation="@anim/***" //这是装载具体动画的xml文件
(2)在具体的布局文件中配置属性
android:layoutAnimation="@anim/***"
五.AnimationListener
1.简介
AnimationListener是一个监听器,它在动画执行的各个阶段会得到通知,并且调用相应的方法
2.方法
(1)onAnimationStart(Animation animation) 在动画开始的时候调用
(2)onAnimationEnd(Animation animation) 在动画结束的时候调用
(3)onAnimationRepeate(Animation animation) 在动画重复的时候调用
3.实现
(1)构造监听器
private class MyAnimationListener implements AnimationListener{
......在其中覆写三种方法
}
(2)使用
animation.setAnimationListener(new MyAnimationListener());
Android—Animation
一.Animation简介
1.简介 Animation为Android提供了一系列的动画效果:旋转、缩放、移动、淡入淡出,这些动画效果可以应用于绝大多数控件。
2.分类
Animation可分为两类:
TweenedAnimations:渐变动画,具体就是旋转、缩放、移动、淡入淡出效果。
Frame-by-FrameAnimations:将一系列Drawable序列一次播放,类似于电影模式,常用来进行定时更新背景等操作。
3.实现方法
Animation有两种实现方法:
在xml文件中实现,优点是复用性好,可维护性好,多个控件可以使用同一个xml文件。缺点是由于xml文件不进行编译,所以排错比较难。
在代码中实现,优点是排错很方便,缺点是重复代码多,可复用性低。
二.TweenedAnimations
1.效果
Alpha:淡入淡出
Scale:缩放
Rotate:旋转
Translate:移动
2.实现
在代码中实现
(1)创建AnimationSet对象(可以柔和多个动画效果)
AnimationSet是Animation的子类,一个AnimationSet包含了一系列的Animation,对AnimationSet属性的设置将会应用于其中的每一个Animation。
AnimationSet animationSet=new AnimationSet(true);
(2)根据需要创建相应的Animation对象(根据4种效果有4个子类)
淡入淡出: AlphaAnimation alphaAnimation=new AlphaAnimation(1,0); //两个参数分别表示初始透明度和目标透明度,
//1表示不透明,0表示完全透明。
旋转:RotateAnimation rotateAnimation=new RotateAnimation(0,360,Animation.RELATIVE_TO_PARENT,1f,Animation.RELATIVE_TO_PARENT,1f);
参数含义:
参数1:初始角度,0表示图片当前位置。
参数2:目标角度。
参数3、4、5、6定义了旋转的圆心
参数3:X坐标的类型,有三种默认值:RELATIVE_TO_PARENT 相对于父控件
RELATIVE_TO_SELF 相对于符自己
RELATIVE_TO_ABSOLUTE 绝对坐标
参数4:X轴偏移比例,变化范围是0f—1f
参数5:Y坐标的类型,同样也有三种默认值
参数6:Y轴偏移比例,变化范围是0f—1f
缩放:ScaleAnimation scaleAnimation=new ScaleAnimation(1,0.1f,1,0.1f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
参数含义:
参数1,2:X轴缩放比例—从1缩放到0.1
参数3,4:Y轴缩放比例—从1缩放到0.1
参数5,6:X轴轴心点(类型和比例)
参数7,8:Y轴轴心点(类型和比例)
移动:TranslateAnimation translateAnimation=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0.5f);
参数含义:
参数1,2:X轴的开始位置
参数3,4:X轴的结束位置
参数5,6:Y轴的开始位置
参数7,8:Y轴的结束位置
(3)为Animation配置数据
这里说明一下TweenedAnimations的几个通用属性
.setDuration(long durationMills); //动画执行的时间,单位是毫秒。
.setFillAfter(boolean fillAfter); //设为true,则动画完成后停留在结束状态
.setFillBefore(boolean fillBefore); //设为true,则动画完成后停留在初始状态
.setStartOffset(long startOffset); //动画执行前的等待时间
.setRepeatCount(int repeatCount); //动画执行重复的次数
(4)将Animation对象加入AnimationSet中
animationSet.addAnimation(alphaAnimation);
(5)使用控件对象开始执行AnimationSet
***.StartAnimation(animationSet);
在xml中实现
(1)在res目录下新建anim文件夹
(2)在anim中创建xml文件,并首先加入set标签:
<set xmlns:android=“http://schemas.android.com/apk/res/android”
android:interpolator="@android:anim/accelerate_interpolator">
</set>
(3)在set标签中可加入rotate、alpha、scale或translate等标签。
例:
<rotate
android:fromDegrees="0" //起始角度
android:toDegrees="360" //目的角度,这里的角度可以写负数,这时会逆时针旋转
android:pivotX="%50" //X轴的旋转圆心,50,则对应RELATIVE_TO_ABSOLUTE ,50%,则对
//应 RELATIVE_TO_SELF ,50%p,则对应RELATIVE_TO_PARENT 。
android:pivotY="%50" //Y轴的旋转圆心
>
这些标签的具体使用可以查阅Android帮助文档。
(4)在代码中使用AnimationUtils装载xml,并生成Animation对象
Animation animation=AnimationUtils.loadAnimation(MainActivity.this,R.anim.***); //装载指定的xml文件
3.关于Interpolator
(1)简介
Interpolator定义了动画的速率,几种默认的Interpolator如下:
AccelerateInterpolator:动画开始时比较慢,然后逐渐加速。
DecelerateInterpolator:动画开始时比较快,然后逐渐减速。
AccelerateDecelerateInterpolator:动画开始时和结束时比较慢,中间过程加速。
LinearInterpolator:动画匀速进行。
CycleInterpolator:动画循环播放指定次数,速率沿着正弦曲线改变。
(2)实现
定义在代码中:
AnimationSet animationSet =new AnimationSet (true); //这里设置为true,则为animationSet 设置的Interpolator将
//应用于animationSet 中的所有animation对象。
animationSet .setInterpolator(new AccelerateInterpolator);//为animationSet 设置Interpolator。
或者:
AnimationSet animationSet =new AnimationSet (false);
animation1 .setInterpolator(new AccelerateInterpolator);
animation2.setInterpolator(new AccelerateInterpolator);
...... //为每一个animation对象设置Interpolator。
定义在xml中:
在set标签中添加属性,
android:shareInterpolator="true" //设置为true,则这时设置的Interpolator适用于标签中的所有动画。
android:interpolator="@android:anim/accelerate_interpolator” //为set设置Interpolator。
或者:
android:shareInterpolator="false" //设置为false,则需为每一个动画添加interpolator属性。
三.Frame-By-FrameAnimations
1.实现
(1)在drawable文件夹下创建xml文件:
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlms:android="http://schemas.android.com/apk/res/android"
android:onshot="false">
<item android:drawable=""@drawable/pic1 android:duration="500" />
<item android:drawable=""@drawable/pic2android:duration="500" />
<item android:drawable=""@drawable/pic3android:duration="500" />
</animation-list>
这个文件就定义了需要一次播放的图片资源,每一个<item>就是一个资源,drawable属性就是资源图片,duration指的是播放的时长。
(2) 代码中添加:
imageView.setBackgroundResource(R.drawable.***); //将创建的的xml装载进imageView
AnimationDrawable animationDrawable=(AnimationDrawable)imageView.getBackground();
animationDrawable.start(); //启动动画
四.LayoutAnimaionController
1.简介
LayoutAnimaionController为Layout或者viewGroup里的控件设置动画效果,特点是它会使其中的每个控件都有相同的动画效果,这些控件的动画效果可以在不同的时间显示出来。
2.实现(结合ListView使用)
LayoutAnimaionController同样即可以在代码中设置,也可以在xml中设置。
在代码中:
(1)创建Animation对象,使用构造函数或者装载xml都可以。
(2)创建LayoutAnimaionController对象
LayoutAnimaionController lac=new LayoutAnimaionController(animation);
(3)设置属性
lac.setOrder(LayoutAnimaionController .ORDER_NORMAL);//设置顺序
有三种默认顺序:
LayoutAnimaionController .ORDER_NORMAL // 顺序
LayoutAnimaionController .ORDER_REVERSE //反序
LayoutAnimaionController .ORDER_RANDOM //随机
lac.setDelay(***f);//设置执行动画的延迟时间,即时间间隔,单位是秒
(4)为ListView设置
listView.setLayoutAnimation(lac);
在xml文件中:
(1)在res/anim文件夹中创建xml文件
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android“
android:delay="0.5" //执行动画的延迟时间,即时间间隔,单位是秒
android:animationOrder="random"/"normal"/"reverse" //执行顺序
android:animation="@anim/***" //这是装载具体动画的xml文件
(2)在具体的布局文件中配置属性
android:layoutAnimation="@anim/***"
五.AnimationListener
1.简介
AnimationListener是一个监听器,它在动画执行的各个阶段会得到通知,并且调用相应的方法
2.方法
(1)onAnimationStart(Animation animation) 在动画开始的时候调用
(2)onAnimationEnd(Animation animation) 在动画结束的时候调用
(3)onAnimationRepeate(Animation animation) 在动画重复的时候调用
3.实现
(1)构造监听器
private class MyAnimationListener implements AnimationListener{
......在其中覆写三种方法
}
(2)使用
animation.setAnimationListener(new MyAnimationListener());
发表评论
-
打印调用堆栈
2019-11-15 15:48 446平常我们遇到不清楚代码逻辑的,可以通过打印调用堆栈来理清楚,如 ... -
你知道Log.isLoggable
2018-11-23 14:15 850我们可以通过Log.isLoggable来动态开关log的输出 ... -
android:allowUndo
2018-04-25 16:51 754Android 在Android 23增加了UndoManag ... -
mipmap-xxx
2015-12-10 11:35 1065最近在看AOSP,发现mipmaps, 百度 了一下,发现有各 ... -
《Android.Programming.Pushing.the.Limits].Erik.Hellman》记录1
2015-10-29 10:56 553最近在看《Android.Programming.Pushin ... -
System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
2015-10-28 20:02 1280转自http://blog.csdn.net/wutianyi ... -
GPS的开关设置
2015-09-29 18:36 1990//modify by hyxu 2015-9-30 to s ... -
DialogFragment
2015-09-25 13:56 1012public class YesNoDialog extend ... -
ANDROID L——RecyclerView,CardView导入和使用
2015-07-23 09:51 921转自http://blog.csdn.net/a3969019 ... -
IntentService 和ResultReceiver
2015-07-22 20:00 789转自[url] http://javatechig.com/a ... -
Android media媒体库分析之:分类别统计媒体文件大小
2015-07-21 20:07 527转自http://www.linuxidc.com/Linux ... -
java.lang.IllegalArgumentException: Service Intent must be explicit
2015-07-21 20:03 1280转自:http://www.2cto.com/kf/20150 ... -
Context 和Application Context
2015-02-11 15:14 865http://possiblemobile.com/2013/ ... -
ContentProviderOperation.Builder 中withValue和withValueBackReference的区别
2015-02-10 14:01 2179关于ContentProviderOperation.Buil ... -
AndroidManifest.xml的Service元素 android:process设置
2013-05-30 17:02 11462转自:http://galin.blog.sohu ... -
android中打包含有Activity以及资源文件的jar包在工程中调用
2013-05-28 15:00 1294转自:http://www.cnblogs.com/vaiya ... -
Android杂谈--内存泄露(1)--contentView缓存使用与ListView优化
2012-11-01 09:29 2802转自:http://www.cnblogs.com/louli ... -
Handler+ExecutorService(线程池)+MessageQueue模式+缓存模式
2012-10-31 14:32 1859转自:http://www.eoeandroid.com/th ... -
Android onTouchEvent和onInterceptTouchEvent
2012-10-24 15:05 1263ViewGroup里的onInterceptTouchEven ... -
Android 内存管理的相关知识
2012-10-15 14:03 1140最近在读柯元旦的《Android 内核剖析》一书的“内存管理” ...
相关推荐
微信小程序实现animation动画,具体内容如下 1. 创建动画实例 wx.createAnimation(OBJECT) 创建一个动画实例animation。调用实例的方法来描述动画。最后通过动画实例的export方法导出动画数据传递给组件的...
我们经常利用GPU Instancing 去实现室外场景,比如草地和树木。但是对于SkinnedMeshRenderer,例如角色...Animation Instancing是一种大大减少CPU消耗并且对GPU Instancing的一种补充 查看效果用 Crowd Simulation 场景
• 1、《Animation 动画详解(一)——alpha、scale、translate、rotate、set的xml属性及用法》 • 2、《Animation动画详解(二)——Interpolator插值器》 • 3、《Animation动画详解(三)—— 代码生成alpha、...
RPG Character Mecanim Animation Pack 最新版本收錄超過 1000 個專業動作,版本更新速度快,持續加入新的動作,提供物理基礎的控制腳本,並且支援 XBox360 控制器,您可以直接拖曳到遊戲專案使用。 RPG Character ...
Animation GIF ActiveX is a 32bit OLE Control Module to display GIF file(still and animation, GIF87a and GIF89a) in OLE Container. It supports all GIF89a standard, including transparent, animation, ...
About This Book Create and export models and animation sequences to Unity from 3ds max and Maya Prepare character models and animation for games using Mecanim’s rigging tools Retarget, adjust, and ...
This comprehensive work provides the fundamentals of computer facial animation and brings into sharper focus techniques that are becoming mainstream in the industry. Over the past decade, since the ...
This book is targeted at hobbyists, students, and game development professionals familiar with the Unity basics, looking to extend their skills and knowledge in the field of real-time game animation....
Powerful Animation Editor for animating any type of 3D model right inside Unity. Reduce development time by fine tuning animations even while being in play mode. No CPU overhead: UMotion produces ...
animation: run 20s linear infinite; animation-direction: normal; } .fish{ width: 174px; height: 126px; position: absolute; left:35%; top:0; background:url(image/fish8.png) no-repeat left top;...
用animation实现UIView动画效果,简单上中下移动
MeshAnimation.unitypackage
Skele: Character Animation Toolssignificantly speeds up animator/indie's animation workflow in several ways: 1. Enable developers to make / modify character animations in UnityEditor. Reduce software...
一键将角色的Animator或Animation去掉,将SkinnedMeshRender更换为一般的Mesh Render,完成将动画效果的实现从CPU转移到GPU运算的目的,来利用GPU Instancing技术减少Draw Call。 • Convert assets quickly and ...
Computer Animation, Third Edition: Algorithms and Techniques.第三版,无水印。
Aurora 3D Animation Maker一款专业的3D文本动画制作软件,与其同类的软件还有Xara 3D及Cool3D,使用它能够让你轻松制作出具有专业水准的3D动画效果,能够让初学者在最短的时间创作出符合要求的动画,丰富的工具...
很棒的一本关于iOS Core Animation的书,解决了我之前对UI,动画,性能的疑惑。
3D Animation for the Raw Beginner Using Autodesk Maya, 2nd Edition by Roger King Chapman and Hall/CRC English 2019-02-16 452 pages 5.0/5.0 2 reviews Details Title: 3D Animation for the Raw Beginner ...
css3 animation酷炫的文字动画特效 css3 animation酷炫的文字动画特效
VB Animation GIF ActiveX控件 YQSoft公司开发的一款功能强大的OCX控件,让你在Visual Basic程序中实现GIF动画,程序很小但功能强大而且是纯VB代码开发,没有使用任何其他的控件,控件仅40K,安装包只有12K,...