Android中view动画

Posted iFat的笔记本

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中view动画相关的知识,希望对你有一定的参考价值。

[1]透明

//点击按钮 实现iv 透明的效果  动画 
    public void click1(View v) { 
        //1.0意味着着完全不透明 0.0意味着完全透明
        AlphaAnimation aa = new AlphaAnimation(1.0f, 0.0f);
        aa.setDuration(2000); //设置动画执行的时间
        aa.setRepeatCount(1); //设置重复的次数
        aa.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        //iv开始执行动画 
        iv.startAnimation(aa);
        
    }

[2]旋转

//点击按钮 实现iv 执行一个旋转 动画 
    public void click2(View v) { 
        //fromDegrees 开始角度   toDegrees 结束角度
//        RotateAnimation  ra = new RotateAnimation(0, 360);    
        RotateAnimation ra = new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        ra.setDuration(2000); //设置动画执行的时间
        ra.setRepeatCount(1); //设置重复的次数
        ra.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        //iv开始执行动画 
        iv.startAnimation(ra);
        
    }

[3]缩放

    //点击按钮进行一个缩放动画
    public void click3(View v) { 
        ScaleAnimation sa = new ScaleAnimation(1.0f,2.0f, 1.0f, 2.0f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        sa.setDuration(2000); //设置动画执行的时间
        sa.setRepeatCount(1); //设置重复的次数
        sa.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        //iv开始执行动画 
        iv.startAnimation(sa);
    }

[4]位移

//位移动画 
    public void click4(View v){
        TranslateAnimation ta = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0.2f);
         ta.setDuration(2000); //设置动画执行的时间
         ta.setFillAfter(true);//当动画结束后 动画停留在结束位置
         
         //开始动画
         iv.startAnimation(ta);
    }

 

//动画一起飞
    public void click5(View v){
        AnimationSet set = new AnimationSet(false);
        
        //透明动画
        AlphaAnimation aa = new AlphaAnimation(1.0f, 0.0f);
        aa.setDuration(2000); //设置动画执行的时间
        aa.setRepeatCount(1); //设置重复的次数
        aa.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        //旋转动画
        RotateAnimation ra = new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        ra.setDuration(2000); //设置动画执行的时间
        ra.setRepeatCount(1); //设置重复的次数
        ra.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        //缩放
        ScaleAnimation sa = new ScaleAnimation(1.0f,2.0f, 1.0f, 2.0f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        sa.setDuration(2000); //设置动画执行的时间
        sa.setRepeatCount(1); //设置重复的次数
        sa.setRepeatMode(Animation.REVERSE);//设置动画执行的模式
        
        TranslateAnimation ta = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0.2f);
         ta.setDuration(2000); //设置动画执行的时间
         ta.setFillAfter(true);//当动画结束后 动画停留在结束位置
         
        //添加动画
        set.addAnimation(aa);
        set.addAnimation(ra);
        set.addAnimation(sa);
        set.addAnimation(ta);
        
        //最后一步 要记得 执行动画
        iv.startAnimation(set);
        
        
    }

 

以上是关于Android中view动画的主要内容,如果未能解决你的问题,请参考以下文章

Android13_fragment_view动画_属性动画

Android:将“ViewPager”动画从片段更改为片段

Android 动画嵌套片段

Android使用片段在viewpager中的页面滚动上放置动画

在渲染之前触发ViewPager片段内嵌套片段的动画

Android动画之View Animation--alphatranslatescalerotate