解决AnimationDrawable动画不运行的问题
在Activity的onCreate()或者onStart() ,调用AnimationDrawable.start()方法,动画是不会运行的
解决办法: private Handler handler = new Handler(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.loading); ImageView line = (ImageView) findViewById(R.id.loading_line); handler.postDelayed(new Runnable() { public void run() { AnimationDrawable frameAnimation = (AnimationDrawable) line.getBackground(); frameAnimation.start(); } }, 50); } }
至于为啥不运行我也不知道原因,可能不是线程安全的吧,把它放在一个handler.post方法绝对是不错的实践。这样一定能够保证线程安全的。
|