我正在创建一个图库视图,在这里我从网上加载图像。在加载图像时,我希望将动画显示为每个图像的占位符。我想这可以用一个动画绘制,但是,动画不会开始。动画的第一帧按预期加载,如果在活动中使用相同的动画,例如在活动中更改的onWindowFoucChanged中,则一切正常。
在galleryitemcursoradapter(它扩展了simplecursoradapter)的getview方法中,有以下代码片段:
AnimationDrawable frameAnimation = (AnimationDrawable) mContext.getResources().getDrawable(R.drawable.loading);
holder.picture.setImageDrawable(frameAnimation);
frameAnimation.setCallback(holder.picture);
frameAnimation.setVisible(true, true);
frameAnimation.start();
图片是一个图像视图。我没有得到错误,而且(非常)类似的代码在其他地方似乎工作得很好,这使我相信这可能与其他地方报道的动画oncreate问题类似。我也试过以上代码的一些变体。
我的问题:
是否有更简单/更好的方法来显示加载动画?
如果可能的话,我能做些什么来让上面的例子起作用?
最佳答案
创建一个新线程并开始..
new Thread(new Runnable() {
public void run(){
// some code that runs outside the ui thread.
frameAnimation.start();
}
}).start();