动画入门

在动态代码里面写

//渐变透明度动画效果
AlphaAnimation alphaAnimation=new AlphaAnimation(0.0f, 1.0f);
         alphaAnimation.setDuration(1000);
         view.startAnimation(alphaAnimation);

创建 alpha_style.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <alpha
        android:duration="3000"
        android:fromAlpha="0.1"
        android:toAlpha="1.0" />

</set>

//画面转换位置移动动画效果
TranslateAnimation translateAnimation=new TranslateAnimation(0.0f, 100f, 0.0f, 0.0f);
        translateAnimation.setDuration(1000);
        view.startAnimation(translateAnimation);

创建 translate_style.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate 
       android:fromXDelta="0"
        android:toXDelta="200"
        android:fromYDelta="0"
        android:toYDelta="0"
        android:duration="2000"
        />
</set>

//画面转移旋转动画效果
RotateAnimation rotateAnimation=new RotateAnimation(0f, 90f);
        rotateAnimation.setDuration(1000);
        view.startAnimation(rotateAnimation);

创建 rotate_style.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
  <rotate 
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromDegrees="0" 
        android:toDegrees="+360"         
        android:pivotX="50%" 
        android:pivotY="50%"     
        android:duration="3000" /> 

</set>

//渐变尺寸伸缩动画效果
    // 以下四种属性值    
        //0.0表示收缩到没有 
        //1.0表示正常无伸缩     
        //值小于1.0表示收缩  
        //值大于1.0表示放大
        //第一个参数fromX为动画起始时 X坐标上的伸缩尺寸    
        //第二个参数toX为动画结束时 X坐标上的伸缩尺寸     
        //第三个参数fromY为动画起始时Y坐标上的伸缩尺寸    
        //第四个参数toY为动画结束时Y坐标上的伸缩尺寸  
        //第五个参数pivotXType为动画在X轴相对于物件位置类型  
        //第六个参数pivotXValue为动画相对于物件的X坐标的开始位置
        //第七个参数pivotXType为动画在Y轴相对于物件位置类型   
        //第八个参数pivotYValue为动画相对于物件的Y坐标的开始位置
ScaleAnimation scaleAnimation= new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f,
                Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 1.0f);
        scaleAnimation.setDuration(2000);
        view.startAnimation(scaleAnimation);

创建 scale_style.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
       <scale  
          android:interpolator="@android:anim/accelerate_decelerate_interpolator"
          android:fromXScale="0.0"
          android:toXScale="1.4"
          android:fromYScale="0.0"
          android:toYScale="1.4"
          android:pivotX="50%"
          android:pivotY="50%"
          android:fillAfter="false"
          android:duration="700" />
</set>


//动画插入器
 android:interpolator="@android:anim/accelerate_decelerate_interpolator"
//有三种动画插入器:
            //加速-减速 动画插入器
            accelerate_decelerate_interpolator  
            //加速-动画插入器
            accelerate_interpolator   
            // 减速- 动画插入器      
            decelerate_interpolator        

AnimationSet animationSet=new AnimationSet(true);
animationSet.addAnimation(//各种动画...);
//动画停留在最后一帧
animationSet.setFillAfter(true);
view.startAnimation(animationSet);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值