【转】setAnimation和startAnimation区别

http://stackoverflow.com/questions/10909865/setanimation-vs-startanimation-in-android

http://blog.csdn.net/wyhuan1030/article/details/7409869

 

设置一个动画播放这一观点。如果你想立即播放的动画,使用startAnimation这种方法提供了允许细粒度控制的起始时间和失效,

但你必须确保:1)动画开始时间 2)动画应该开始时的观点,将被视为无效。

  1. <span id="result_box" lang="zh-CN"></span>  
  2.     /** 
  3.      * Sets the next animation to play for this view. 
  4.      * If you want the animation to play immediately, use 
  5.      * startAnimation. This method provides allows fine-grained 
  6.      * control over the start time and invalidation, but you 
  7.      * must make sure that 1) the animation has a start time set, and 
  8.      * 2) the view will be invalidated when the animation is supposed to 
  9.      * start. 
  10.      * 
  11.      * @param animation The next animation, or null. 
  12.      */  
  13.     public void setAnimation(Animation animation) {  
  14.         mCurrentAnimation = animation;  
  15.         if (animation != null) {  
  16.             animation.reset();  
  17.         }  
  18.     }  

 

现在开始指定的动画。

 

  1. /** 
  2.  * Start the specified animation now. 
  3.  * 
  4.  * @param animation the animation to start now 
  5.  */  
  6. public void startAnimation(Animation animation) {  
  7.     animation.setStartTime(Animation.START_ON_FIRST_FRAME);  
  8.     setAnimation(animation);  
  9.     invalidateParentCaches();  
  10.     invalidate(true);  
  11. }  


建议使用

startAnimation来启动动画,setAnimation启动动画是需要条件的

posted @ 2015-11-19 13:57  牧之丨  阅读(3468)  评论(0编辑  收藏  举报