Android学习笔记(一)--Animation(iparty工程开始界面)

Animations的分类:
Animations从总体来说可以分为两大类:
第一类:Tweened Animations。渐变动画。该类Animations提供了旋转,移动,伸展和淡出等等效果。
第二类:Frame-by-Frame Animations。这一类Animations可以创建一个Drawable序列,这些Drawable可以按照指定的时间间歇一个一个的显示。

Tweened Animations的分类:
1.Alpha:淡入淡出效果
2.Scale:缩放效果
3.Rotate:旋转效果
4.Translate:移动效果
  
使用Tweened Animations的步骤
1.创建一个AnimationSet对象。
2.根据需要创建相应的Animation对象
3.根据软件动画的需求,为Animation对象设置相应的数据。
4.将Animation对象添加到AnimationSet对象当中。
5.使用控件对象开始执行AnimationSet。
 
Tween Animations的通用属性
1.setDuration(long durationMills)
    设置动画持续时间(单位毫秒)
2.setFillAfter(boolean fillAfter)
    如果fillAfter的值为true,则动画执行后,控件将停留在执行结束的状态。
3.setFillBefore(boolean fillBefore)
    如果fillBefore的值为true,则动画执行后,控件将回到动画执行前的状态。
4.setStartOffSet(long startOffSet)
    设置动画执行之前的等待时间。
5.setRepeatCount(int repeatCount)
    设置动画重复执行的次数。
范例:
1         // 渐变展示启动屏
2         //Alpha:淡入淡出效果
3         //两个参数表示从一个什么透明度变化到什么透明度,1代表不透明,0代表完全透明。
4         AlphaAnimation aa = new AlphaAnimation(0.3f, 1.0f);
5         //设置动画持续时间(单位毫秒)
6         aa.setDuration(2000);
7         // View对象开始动画 
8         view.startAnimation(aa);

  就像Button控件有监听器一样,动画效果也有监听器,只需要实现AnimationListener就可以实现对动画效果的监听。

        aa.setAnimationListener(new AnimationListener() {
            @Override
            //第一个函数的意思是在动画执行完之后需要开发者做什么
            public void onAnimationEnd(Animation arg0) {
                redirectTo();
            }

            @Override
            //第二个函数的意思是在动画重复执行的过程中应该做什么
            public void onAnimationRepeat(Animation animation) {
            }

            @Override
            //第三个函数的意思是当动画开始执行时有什么动作发生
            public void onAnimationStart(Animation animation) {
            }

        });
1     /**
2      * 跳转到...
3      */
4     private void redirectTo() {
5         Intent intent = new Intent(this, Main.class);
6         startActivity(intent);
7         finish();
8     }
原文地址:https://www.cnblogs.com/birdhack/p/3760936.html