animation和animator的区别
二者的区别是:
animation意思是生气,活泼;动画片制作,动画片摄制;动画片。
animator意思是动画片绘制者。
例句辨析:
animation
1、The films are a mix of animation and full-length features.
这些电影将动画制作和长篇故事片融为一体。
2、This film is the first British animation sold to an American network.
这是第一部出售给美国电视网的英国动画片。
3、They both spoke with animation.
他们兴致勃勃地说着。
animator
1、This specifies the attribute on which the animator will operate.
该属性指定动画将在哪个属性上进行操作。
2、Makoto Shinkai is a Japanese anime director, animator, and principal voice actor.
新海诚是日本著名的动画导演、动画家和声优。
3、What skills do you think are important to be a successful animator?
你认为成为一个成功的动画人,哪些技能是重要的呢?
animator代表的是属性动画,改变的是 View属性的值;
animation代表的是帧动画,不改变 View 属性的值。
Animator框架是Android 4.0中新添加的一个动画框架,和之前的Animation框架相比,Animator可以进行更多和更精细化的动画控制,而且比之前更简单和更高效。在4.0源码中随处都可以看到Animator的使用。
二、 Animation和Animator比较
如下图,是Animation和Animator两个类继承图的对比。
C:Object C:Object
C:Animation C:Animator
C:AlphaAnimation C:AnimatorSet
C:AnimationSet C:ValueAnimator
C:DummyAnimation C:ObjectAnimator
C:Rotate3dAnimation C:TimeAnbimator
C:RotateAniamtion
C:ScaleAnimation
C:TranslateAnimation
Animation框架定义了透明度,旋转,缩放和位移几种常见的动画,而且控制的是一个整个View动画,实现原理是每次绘制视图时View所在的ViewGroup中的drawChild函数获取该View的Animation的Transformation值,然后调用canvas.concat(transformToApply.getMatrix()),通过矩阵运算完成动画帧,如果动画没有完成,继续调用invalidate()函数,启动下次绘制来驱动动画,动画过程中的帧之间间隙时间是绘制函数所消耗的时间,可能会导致动画消耗比较多的CPU资源。
在Animator框架中使用最多的是AnimatorSet和ObjectAnimator配合,使用ObjectAnimator进行更精细化控制,只控制一个对象的一个属性值,多个ObjectAnimator组合到AnimatorSet形成一个动画。而且ObjectAnimator能够自动驱动,可以调用setFrameDelay(longframeDelay)设置动画帧之间的间隙时间,调整帧率,减少动画过程中频繁绘制界面,而在不影响动画效果的前提下减少CPU资源消耗。
三、 关键接口介绍
1. ObjectAnimator介绍
Animator框架封装得比较完美,对外提供的接口非常简单,创建一个ObjectAnimator只需通过如下图所示的静态工厂类直接返回一个ObjectAnimator对象。传的参数包括一个对象和对象的属性名字,但这个属性必须有get和set函数,内部会通过java反射机制来调用set函数修改对象属性值。还包括属性的初始值,最终值,还可以调用setInterpolator设置曲线函数。
2. AnimatorSet介绍
AnimatorSet主要是组合多个AnimatorSet和ObjectAnimator形成一个动画,并可以控制动画的播放顺序,其中还有个辅助类通过调用play函数获得。
3. AnimatorUpdateListner介绍
通过实现AnimatorUpdateListner,来获得属性值发生变化时的事件,在这个回调中发起重绘屏幕事件。
四、 使用实例
在Android4.0中的ApiDemo中有个BouncingBalls实例,描述了Animator框架的使用,当点击屏幕时,绘制一个球从点击位置掉到屏幕底部,碰到底部时球有压扁的效果,然后回弹到点击位置再消失。
代码如下:
ShapeHolder newBall =addBall(event.getX(), event.getY());
// Bouncing animation with squash and stretch
float startY = newBall.getY();
float endY = getHeight() - 50f;
float h = (float)getHeight();
float eventY = event.getY();
int duration = (int)(500 * ((h - eventY)/h));
ValueAnimator bounceAnim = ObjectAnimator.ofFloat(newBall, "y", startY, endY);
bounceAnim.setDuration(duration);
bounceAnim.setInterpolator(new AccelerateInterpolator());
ValueAnimator squashAnim1 = ObjectAnimator.ofFloat(newBall, "x", newBall.getX(),
newBall.getX() - 25f);
squashAnim1.setDuration(duration/4);
squashAnim1.setRepeatCount(1);
squashAnim1.setRepeatMode(ValueAnimator.REVERSE);
squashAnim1.setInterpolator(new DecelerateInterpolator());
ValueAnimator squashAnim2 = ObjectAnimator.ofFloat(newBall, "width", newBall.getWidth(),
newBall.getWidth() + 50);
squashAnim2.setDuration(duration/4);
squashAnim2.setRepeatCount(1);
squashAnim2.setRepeatMode(ValueAnimator.REVERSE);
squashAnim2.setInterpolator(new DecelerateInterpolator());
ValueAnimator stretchAnim1 = ObjectAnimator.ofFloat(newBall, "y", endY,
endY + 25f);
stretchAnim1.setDuration(duration/4);
stretchAnim1.setRepeatCount(1);
stretchAnim1.setInterpolator(new DecelerateInterpolator());
stretchAnim1.setRepeatMode(ValueAnimator.REVERSE);
ValueAnimator stretchAnim2 = ObjectAnimator.ofFloat(newBall, "height",
newBall.getHeight(),newBall.getHeight() - 25);
stretchAnim2.setDuration(duration/4);
stretchAnim2.setRepeatCount(1);
stretchAnim2.setInterpolator(new DecelerateInterpolator());
stretchAnim2.setRepeatMode(ValueAnimator.REVERSE);
ValueAnimator bounceBackAnim = ObjectAnimator.ofFloat(newBall, "y", endY,
startY);
bounceBackAnim.setDuration(duration);
bounceBackAnim.setInterpolator(newDecelerateInterpolator());
// Sequence the down/squash&stretch/upanimations
AnimatorSet bouncer = new AnimatorSet();
bouncer.play(bounceAnim).before(squashAnim1);
bouncer.play(squashAnim1).with(squashAnim2);
bouncer.play(squashAnim1).with(stretchAnim1);
bouncer.play(squashAnim1).with(stretchAnim2);
bouncer.play(bounceBackAnim).after(stretchAnim2);
// Fading animation - remove the ball when theanimation is done
ValueAnimator fadeAnim = ObjectAnimator.ofFloat(newBall, "alpha", 1f, 0f);
fadeAnim.setDuration(250);
fadeAnim.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animatoranimation) {
balls.remove(((ObjectAnimator)animation).getTarget());
}
});
// Sequence the two animations to play oneafter the other
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.play(bouncer).before(fadeAnim);
// Start the animation
animatorSet.start();
两个词性质不一样。animation是在animate赋予生命的基础上加了ion的名称后缀成为了一个名词鼓励、卡通制作、活泼。animator=animater是在animate的基础上加了er/or的名词后缀表示人或物,就是赋予生命的人,鼓舞者,卡通漫画制作者。
animation
英 [ænɪ'meɪʃ(ə)n] 美 [,ænɪ'meʃən]
n. 活泼,生气;激励;卡通片绘制
animator
英 ['ænɪmeɪtə] 美 ['ænə'metɚ]
n. 鼓舞者;赋与生气者;卡通片绘制者(等于animater)
没啥区别。。。
nero刻录失败
有三个可能引起此类情况的原因。1、你安装的Nero版本: 6.0.0.11是你买刻录机带的版本吗?如果不是的话会出现软件版本与刻录机硬件不兼容的情况,介意你用原装正版软件。2、你可以卸载之后重新安装,可能会解决这个问题。3、你的刻录机质量有问题,或者你的刻录量过大使刻录机光头受损,如果是这样的...
跟我说说F1各个车队的 赞助商
不过走出欧洲例如在中国大奖赛上,我们就能看到那些以前是白色条文的地方会再此出现万宝路英文标识。 第二大赞助商:菲亚特(Fiat) 菲亚特是法拉利第二大赞助商,看是第二大其实准确的来说应该和万宝路一样并列第一大,因为菲亚特是意大利最大的汽车制造商,而法拉利则是菲亚特旗下的一个品牌,所以准确的...
关于psp的菜鸟问题…
1.PSP2000是PSP3000的上一个系列,主要的区别就是3000多了麦克,且屏幕较为艳丽。2.目前2000V2主板已经完美破解(可关机),30005.03系统已不完美破解(不能关机,只能待机)。3.NDS分为上下双屏,下面是触摸屏,上面是显示屏,价格上要略低于PSP(除最新的NDSi)。4.哪个好玩纯粹看个人,各有各的...
PASCAL语言 问题
i,n:integer;begin readln(n); if(nmod100=0)and(nmod400=0)thenwriteln('yes'); if(nmod100=0)and(nmod400<>0)thenwriteln('no'); if(nmod100<>0)and(nmod4=0)thenwriteln('yes'); ifnmod4<>0thenwriteln('no');end. 第三题第二题请楼主说明具体输入和输入格式及变量类型。您可以自己...
英语翻译,请快一点
we actually saw the chinese animations all the time before we went to the primary school.however ,as the development of the economy and the communication of the cultures, lots of foreign animations with good quality have been showed in china.we become more and more admire about the...
爬赭山 用英语怎么说
ca nimation
进口定舱\\出口定舱\\航线操作\\客服\\单证 详细流程
比较常用的国际付款方式有三种,即信用证付款方式、TT付款方式和直接付款方式。1、信用证付款方式 信用证分为光票信用证和跟单信用证两类。跟单信用证是指附有指定单据的信用证,不附任何单据的信用证称光票信用证。简单地说,信用证是保证出口商收回货款的保证文件。请注意,出口货物的装运期限应在信用...
什么样的U盘比较好用?
金士顿和爱国者 清华紫光的最好是不要选 不怎么好用 爱国者的不错 产品特点:·红与黑经典之作 时尚设计 ·透明磨砂设计,钢琴漆表面处理工艺 ·内置硬件电子防干扰系统 ·内置硬件数据放丢失系统 ·采用超稳定A级Flash芯片,无缝嵌入式结构 ·标准USB2.0接口,即插即用 ·电子写保护功能保护数据安全 ...
求一个2004年所有日本动画的列表
Panda Z The Robonimation 熊猫铁金刚ZParanoia Agent 妄想代理人Parasite Dolls Movie 寄生魔偶Phantom...7月9日 欢迎加入N·H·K 24话 TV7月11日 天降小妹 24话 TV7月15日 超越时空的少女 MOV7月
这个动漫叫什么啊?谢谢 急求!
(ジャングルはいつもハレのちグゥ FINAL,以下简称FINAL)于2003年末至2004年初制作,共14集(分为7卷DVD)。OVA在日本兵库县的KIDS STATION电视台播出。动画在台湾由八大电视台引进播出。在美国TV动画与DELUXE由AN Entertainment与Bang Zoom! Entertainment联合译制,FUNimation Entertainment负责发行,在...
戏飞血塞: 您好,英语单词:1)animation = 动画2)animator = 动画师,动画片制作者所以 animation 是制作出来的动画,而 animator 是制作这个动画的人或是主体.
铁岭市18692276947: “动漫”用英语怎么写 - ?
戏飞血塞: 动画的英文有很多表述,如animation、cartoon、animated cartoon、cameracature.其中较正式的 "Animation" 一词源自于拉丁文字根anima,意思为“灵魂”,动词animate是“赋予生命”的意思,引申为使某物活起来的意思.
铁岭市18692276947: “动画”用英文怎么说?
戏飞血塞: 动画的英文有:animation、cartoon、animated cartoon、cameracature.其中,比较正式的 "Animation" 一词源自于拉丁文字根的anima,意思为灵魂;动词animate是赋予生命,引申为使某物活起来的意思.所以animation可以解释为经由创作者的安排,使原本不具生命的东西像获得生命一般地活动.
铁岭市18692276947: android之animator 和animation 的区别 - ?
戏飞血塞: 你好.animator代表的是属性动画,改变的是 View属性的值;animation代表的是帧动画,不改变 View 属性的值.
铁岭市18692276947: 动漫、动画的定义分别是什么?如题 谢谢了 - ?
戏飞血塞: 其实没什么区别 只不过动漫一般指外国的 而动画主要指中国的 都是说想象出来的 后由影象公司制出来的
铁岭市18692276947: 如何区分动漫和动画?有何区别? - ?
戏飞血塞: 有区别 动漫,是动画和漫画的合称.两者之间存在密切的联系,中文里一般均把两者在一起称呼为动漫. 动画(animation或anime)或者卡通(cartoon)所指的是由许多帧静止的画面连续播放时的过程,虽然两者常被争论有何不同,不过基本上都是一样的.无论其静止画面是由电脑制作还是手绘,抑或只是黏土模型每次轻微的改变,然后再拍摄,当所拍摄的单帧画面串连在一起,并且以每秒16帧或以上去播放,使眼睛对连续的动作产生错觉(因为视觉残像所造成).通常这些的影片是由大量密集和乏味的劳动产生,就算在电脑动画科技得到长足进步和发展的现在也是如此.
铁岭市18692276947: 动画(Animation)、卡通(cartoon)、3D、Flash有什么区别……? - ?
戏飞血塞: animation是动画的总称,如果广义的分可以把animation分为3D animation, 2Danimation还有STOP MOTION定格动画.Flash可以算做2Danimation里边的一种,是矢量的动画,制作体积小成本低,适用于网络平台播放.关于卡通的定义你可以...
铁岭市18692276947: 动漫和动画的区别 - ?
戏飞血塞: 动画(中国早期将之称为美术片,实际上现在国际通称为动画片,英文称为animation,它是一种综合艺术门类,是工业社会人类寻求精神解脱的产物,它集合了绘画,漫画,电影,数字媒体,摄影,音乐,文学等众多艺术门类于一身的艺术表...
铁岭市18692276947: animation和cartoon有什么区别 - ?
戏飞血塞: 两者区别如下:1. animation 英 [ænɪ'meɪʃ(ə)n] 美 [,ænɪ'meʃən]n. 活泼,生气;激励;卡通片绘制 例句: Have these next to you as you block out the basic animation. 用这些方法你差不多可以设计出基本的动画来. Watch an ...