【发布时间】:2015-12-17 14:04:06
【问题描述】:
我正在使用Glide 使用PagerAdapter 将图像加载到ViewPager。
当我使用以下方法加载图像时:
Glide.with(mContext).load(mImage).placeholder(R.drawable.placeholder).into(mImageView);
一切正常,但现在我需要从 glide 获取位图,并在加载时将其存储在地图中以供将来编辑,因此我将此方法切换为以下方法:
Glide.with(mContext).load(mImage).asBitmap().placeholder(R.drawable.placeholder).into(new SimpleTarget<Bitmap>() {
@Override
public void onLoadStarted(Drawable placeholder) {
super.onLoadStarted(placeholder);
mImageView.setImageDrawable(placeholder);
}
@Override
public void onResourceReady(Bitmap bitmap, GlideAnimation<? super Bitmap> glideAnimation) {
if (bitmap != null) {
mImageView.setImageBitmap(bitmap);
}
mBitmapMap.put(position, bitmap);
mInterface.onImageLoaded(position, bitmap);
}
});
但结果是图像并不总是显示出来。我认为这与 glide 异步加载图像并在某些时候返回 instatiateItem 方法已经完成运行的事实有一些关系。
看起来this question 是相关的。但是那里的建议对我没有帮助。有人遇到过这个问题并有解决办法吗?
【问题讨论】:
标签: android bitmap android-viewpager android-adapter android-glide