发布网友 发布时间:2022-04-23 18:28
共3个回答
懂视网 时间:2022-04-21 15:25
我们搞android的都知道android的三类Animation,分别是Tween Animation ,Frame Animation和属性动画。1.frame animation非常的简单,说白了就是由一张一张的图片组合而成,首先在drawable文件夹下创建一个类似下面的文件:
然后在java文件中:
AnimationDrawable animationDrawable = (AnimationDrawable) getDrawable(R.drawable.frame_animation);frameAnimation = (TextView) findViewById(R.id.fram_animation);frameAnimation.setBackground(animationDrawable);animationDrawable.start();
就OK了
2.tween animation有四种形式,分别是alpha scale translate rotate ,相信大家都知道什么意思。使用tween animation有两种方式,一种是使用XML实现,一种是纯代码实现,在开发中我们也没有必要两种方式都非常熟悉,只要有一种比较熟就可以了,我个人爱好比较喜欢使用XML。首先创建一个anim文件夹,然后创建一个类似下面的文件:
上述代码需要注意的地方一标注
然后在java文件中调用:
Animation animation = AnimationUtils.loadAnimation(this,R.anim.tween_animation);animation.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { Toast.makeText(getApplicationContext(),"完成",Toast.LENGTH_LONG).show(); } @Override public void onAnimationRepeat(Animation animation) { }});view.startAnimation(animation);
是不是特别简单。
关于属性动画将在下篇博客中介绍到
来自: http://my.oschina.net/gef/blog/553040
热心网友 时间:2022-04-21 12:33
Android中的常用动画有三种:
1、View Animation (Tween Animation 补间动画)
基于View的渐变动画,只改变了View的绘制效果,而实际属性值未变。比如动画移动一个按钮位置,但按钮点击的实际位置仍未改变。在代码中定义动画,可以参考AnimationSet类和Animation的子类;而如果使用XML,可以在res/anim/文件夹中定义XML文件。
2、DrawableAnimation(Frame Animation 帧动画)
加载一系列Drawable资源来创建动画,这种传统动画某种程度上就是创建不同图片序列,顺序播放,就像电影胶片。在代码中定义动画帧,使用AnimationDrawable类;XML文件能更简单的组成动画帧,在res/drawable文件夹,使用<animation-list>采用<item>来定义不同的帧。感觉只能设置的属性是动画间隔时间。
3、PropertyAnimation(属性动画)
动画的对象除了传统的View对象,还可以是Object对象,动画之后,Object对象的属性值被实实在在的改变了。Propertyanimation能够通过改变View对象的实际属性来实现View动画。任何时候View属性的改变,View能自动调用invalidate()来试试刷新。
热心网友 时间:2022-04-21 13:51
android支持两种动画模式,tweenanimation,frameanimationViewAnimation(TweenAnimation):补间动画,给出两个关键帧,通过一些算法将给定属性值在给定的时间内在...