Anton Anton - 1 month ago 11
Android Question

AnimationDrawable don't work in Android 2.2

I using AnimationDrawable like this:

ImageView rocketImage = (ImageView) layout.findViewById(R.id.animation);
rocketImage.setBackgroundResource(R.drawable.progress_blue_animation);
rocketAnimation = (AnimationDrawable) rocketImage.getBackground();
rocketAnimation.start();


This code work in Android 3.0/4.0/4.1/4.0, but don't work in Android 2.2. How to solve this problem?

Answer

As far as i know, thats a Bug in 2.1, 2.2

A possible workaround could be:

ImageView rocketImage = (ImageView) layout.findViewById(R.id.animation);
rocketImage.setBackgroundResource(R.drawable.progress_blue_animation);
rocketAnimation = (AnimationDrawable) rocketImage.getBackground();
rocketImage.post(new Runnable(){
    public void run(){
        rocketAnimation.start();
    }
});

(But i didn't try it in Targets >2.1)

Comments