Android 解决逐帧动画不能自动播放问题

ImageView 图片逐帧动画,可参考用作登录界面,显示进度等
注:ad.start();不能放在OnCreate方法里面,否则动画不会正常播放,只会停留在第一帧.应该是ImageView还没有完全初始化完毕造成的.

AnimationDrawable ad;

        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                ImageView iv = (ImageView) findViewById(R.id.animation_view);
                iv.setBackgroundResource(R.drawable.animation);
                ad = (AnimationDrawable) iv.getBackground();
                iv.getViewTreeObserver().addOnPreDrawListener(opdl);
        }
        OnPreDrawListener opdl=new OnPreDrawListener(){

                @Override
                public boolean onPreDraw() {
                        // TODO Auto-generated method stub
                        ad.start();
                        return true;
                }
                
        };

posted @ 2011-10-17 17:10  jason.android  阅读(407)  评论(0)    收藏  举报