个性进度条--------菊花加载----Android 播放动画

public class MainActivity extends Activity {
private Movie gif;   
    private long gifStart;  
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new CustomGifView(this));
}
//使用android 提供的Movie类进行动画的播放,自定义view
class CustomGifView extends View {  
       public CustomGifView(Context context) {   
           super(context);   
           gif = Movie.decodeStream(getResources().openRawResource(   
                   R.drawable.progress5));  
       }   
         
       public void onDraw(Canvas canvas) {  
           long now = android.os.SystemClock.uptimeMillis();   
             
           if (gifStart == 0) {    
            gifStart = now;   
           }   
           if (gif != null) {     
               int dur = gif.duration();   
               if (dur == 0) {   
                   dur = 1000;   
               }   
               int relTime = (int) ((now - gifStart) % dur);                  
               gif.setTime(relTime);   
               gif.draw(canvas,160, 300);   
               invalidate();   
           }   
       }  
   }  
}


                                                             个性进度条--------菊花加载----Android 播放动画_第1张图片


                               源码地址

你可能感兴趣的:(Android)