AnimationUtils类:动画工具类

9.7  AnimationUtils类:动画工具类

AnimationUtils类是Android系统中的动画工具类,提供了控制View对象的一些工具。该类中最常用的方法便是loadAnimation方法,该方法用于加载XML格式的动画配置文件。在Android系统中,除了在代码中设置动画效果外,还可以在XML配置文件中设置动画的组合动作,这种方式适用性更好。

【基本语法】public static Animation loadAnimation (Context context, int id)

参数说明

context:上下文对象。

id:动画配置文件的ID。

【实例演示】下面通过代码来演示如何加载一个XML组合动画效果。

 
 
  1. public class firstActivity extends Activity {  
  2. /** Called when the activity is first created. */  
  3. @Override  
  4. public void onCreate(Bundle savedInstanceState) {               //重载onCreate方法  
  5.     super.onCreate(savedInstanceState);  
  6.     setContentView(R.layout.main);  
  7.  
  8.     final ImageView image=(ImageView)findViewById(R.id.imageView1); //ImageView对象  
  9.     Button btn1=(Button)findViewById(R.id.button1);             //按钮对象  
  10.     Button btn2=(Button)findViewById(R.id.button2);  
  11.     Animation loadAnimation;                                    //动画对象  
  12.     btn1.setOnClickListener(new View.OnClickListener() {            //设置监听器  
  13.           
  14.         @Override  
  15.         public void onClick(View v) {  
  16.             // TODO Auto-generated method stub                  //加载动画  
  17.             loadAnimation=AnimationUtils.loadAnimation(getApplicationContext(),   
  18.     R.anim.anim);  
  19.             image.setAnimation(loadAnimation);                  //为控件设置动画  
  20.             loadAnimation.setFillAfter(true);                   //停留在结束位置  
  21.             loadAnimation.setFillEnabled(true);  
  22.             loadAnimation.startNow();                           //开始动画  
  23.         }  
  24.     });  
  25.     btn2.setOnClickListener(new View.OnClickListener() {            //设置监听器  
  26.           
  27.         @Override  
  28.         public void onClick(View v) {  
  29.             // TODO Auto-generated method stub  
  30.             loadAnimation.cancel();                         //取消动画执行  
  31.         }  
  32.     });  
  33. }  
  34. }  
在这段代码中,首先声明了动画对象。然后,在第一个按钮监听器中通过loadAnimation方法加载动画配置文件,并设置了动画的一些特征,最后开始执行动画。在第二个按钮监听器中调用cancel方法取消动画执行。这里用到的动画配置文件如下所示,里面定义了位置移动和旋转的组合动画效果。
 
 
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <set xmlns:android="http://schemas.android.com/apk/res/android"> 
  3.     <translate android:toXDelta="0" 
  4.             android:toYDelta="300" 
  5.             android:duration="3000"/>   
  6.     <rotate android:fromDegrees="270" 
  7.             android:toDegrees="360" 
  8.             android:pivotX="50%" 
  9.             android:pivotY="50%" 
  10.             android:duration="3000"/>   
  11. </set> 
读者运行这段代码,可以在手机屏幕上看到如图9.15所示的显示效果。图片从起始位置边旋转边移动,最后停留在如图9.16所示的位置。
 
图9.15  加载动画配置文件
 
图9.16  动画最终位置

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值