3 回答

TA贡献1921条经验 获得超9个赞
final ViewHolder viewHolder;
if (view == null) {
LayoutInflater vi = LayoutInflater.from(context);
view = vi.inflate(R.layout.my_own, parent, false);
viewHolder = new ViewHolder(view);
view.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) view.getTag();
}
viewHolder.report_image.setImageDrawable(null);
if (filepath != null && !filepath.isEmpty()) {
final String fileUrl = filepath.get(0);
//Log.d("image", "image" +data);
if (fileUrl.contains(".jpg") || fileUrl.contains(".png")) {
if (fileUrl != null) { // simulate an optional url from the data item
Glide.with(context)
.asBitmap()
.load(fileUrl)
.into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {
if (resource == null) {
// holder.setIsRecyclable(true);
// return;
}
viewHolder.report_image.setImageBitmap(resource);
// viewHolder.report_image.setScaleType(ImageView.ScaleType.CENTER_CROP);
FM_ReportFileSystem.saveImageToSdCard(resource, fileUrl);
}
});
}
}
}else
{
Bitmap icon = BitmapFactory.decodeResource(context.getResources(),
R.drawable.no_image);
viewHolder.report_image.setImageBitmap(icon);
}

TA贡献1799条经验 获得超6个赞
关于下线有什么想法吗?似乎它需要始终获取当前索引而不是 0。final String fileUrl = filepath.get(0);
也尝试 else 部分用于图像加载。
if (fileUrl.contains(".jpg") || fileUrl.contains(".png")) {
Glide.with(context).asBitmap().load(fileUrl).into(new SimpleTarget < Bitmap > () {
@Override public void onResourceReady(Bitmap resource, Transition < ? super Bitmap > transition) {
viewHolder.report_image.setImageBitmap(resource);
viewHolder.report_image.setScaleType(ImageView.ScaleType.CENTER_CROP);
FM_ReportFileSystem.saveImageToSdCard(resource, fileUrl);
}
});
}else{
//TODO:
viewHolder.report_image.setImageBitmap("Placeholder image");
}

TA贡献1842条经验 获得超22个赞
尝试使用 Glide 的内置占位符功能,并删除布局对图像的引用。
在您的 xml 中,尝试更改
android:src="@drawable/no_image"
至
tools:src="@drawable/no_image"
这将允许仅出于开发/设计目的在布局编辑器中查看图像。您可能需要在父视图中导入工具包才能执行此操作,
xmlns:tools="http://schemas.android.com/tools
然后使用 Glide 的占位符功能在没有可用替代图像的地方自动插入占位符图像。
Glide.with(context)
.asBitmap()
.load(fileUrl)
.placeholder(R.drawable.no image)
//...the rest of your code here
添加回答
举报