我正在创建一个图库视图,我正在从网上加载图片。在加载图像时,我想将动画显示为每个图像的占位符。我想这可以使用AnimationDrawable完成,但是动画不会启动。动画的第一帧按预期加载,如果我在活动中使用相同的onWindowFoucsChanged,一切正常。
在我的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();
holder.picture是一个ImageView。我没有错误,(非常)类似的代码似乎在其他地方工作得很好,让我相信这可能与其他地方报道的动画的onCreate问题类似。我也尝试了上述代码的一些变体。
我的问题:
答案 0 :(得分:1)
创建一个新线程并开始..
new Thread(new Runnable() {
public void run(){
// some code that runs outside the ui thread.
frameAnimation.start();
}
}).start();