0

我在 res 文件夹中创建了一个名为 anim 的文件夹。我已将 9 个连续图像放在 res 文件夹内名为 drawable 的文件夹中。现在我创建了这个:

公共类 AndroidAnimationActivity 扩展 Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.about_screen);
    ImageView myAnimation = (ImageView)findViewById(R.id.myanimation);
    final AnimationDrawable myAnimationDrawable= (AnimationDrawable)myAnimation.getDrawable();
    myAnimation.post(new Runnable(){  
        public void run() {   
            myAnimationDrawable.start();  
            }
        });
    }
}

如您所见,我试图在名为 about_screen 的页面上显示此动画。它只显示第一帧,其余帧不显示(作为动画)。我见过几个人和我有类似的问题,但不完全相同。我希望有人可以帮助我。请具体。我是一个新的安卓学习者。谢谢

4

1 回答 1

1

即使我遇到了这个问题,解决方案也很简单。问题是,您myAnimationDrawable.start()在函数内部调用onCreate()

你有两种可能的选择...

第一个,使动画具有交互性,以便您可以myAnimationDrawable.start() 在某些onClick()函数内部调用。

第二种选择是调用myAnimationDrawable.start()inside View.OnFocusChangeListener()。在这种情况下,您不必使其具有交互性。

于 2013-07-10T19:55:27.370 回答