码迷,mamicode.com
首页 > 移动开发 > 详细

TranslateAnimation 平移动画

时间:2014-12-20 18:08:44      阅读:285      评论:0      收藏:0      [点我收藏+]

标签:

1、

// 下面的效果是将标题栏titleBar向上平移自身高度的距离,即隐藏
                    // 每两个为一组参数,相对于本身控件的X起始、x结束、y起始、y结束
                    TranslateAnimation translate = new TranslateAnimation(
                            Animation.RELATIVE_TO_SELF, 0,
                            Animation.RELATIVE_TO_SELF, 0,
                            Animation.RELATIVE_TO_SELF, 0,
                            Animation.RELATIVE_TO_SELF, -1.0f);

                    // 设置动画执行多少次,如果是-1的话就是一直重复
                    translate.setRepeatCount(Animation.INFINITE);
                    ;
                    // 设置重复模式,RESTART为结束后重新开始,REVERSE为按原来的轨迹逆向返回
                    translate.setRepeatMode(Animation.RESTART);
                    translate.setDuration(1000);// 毫秒单位,5s
                    // 设为true之后,界面会停留在动画播放完时的界面。
                    translate.setFillAfter(true);
                    titleBar.startAnimation(translate);

 2、关于加速减速执行动画

 //根据用户在Spinner的选择设置target的进入的方式  
        switch (position) {  
            case 0:  
                //加速进入  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.accelerate_interpolator));  
                break;  
            case 1:  
                //减速进入  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.decelerate_interpolator));  
                break;  
            case 2:  
                //加速进入.与第一个的区别为当repeatMode为reverse时,仍为加速返回原点  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.accelerate_decelerate_interpolator));  
                break;  
            case 3:  
                //先往后退一点再加速前进  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.anticipate_interpolator));  
                break;  
            case 4:  
                //减速前进,冲过终点前再后退  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.overshoot_interpolator));  
                break;  
            case 5:  
                //case 3,4的结合体  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.anticipate_overshoot_interpolator));  
                break;  
            case 6:  
                //停止前来回振几下  
                a.setInterpolator(AnimationUtils.loadInterpolator(this,  
                        android.R.anim.bounce_interpolator));  
                break;  
        }  

 

Done!

TranslateAnimation 平移动画

标签:

原文地址:http://www.cnblogs.com/xingyyy/p/4175674.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!