滑动错误()请求选项在添加缩略图()后停止工作

时间:2018-10-26 13:23:32

标签: android android-glide

现在,我正在开发一个演示应用程序,该应用程序可以从api加载电影数据,并且我发现Glide比Picasso的投注更快,因此在使用它并添加后

RequestOptions requestOptions = new RequestOptions();
requestOptions.error(R.drawable.poster_placeholder);

Glide.with(context)
     .setDefaultRequestOptions(requestOptions)
     .load(film.getPoster())into(poster);

error()正常工作 但我需要添加加载gif以改善UX 所以我发现这个solution添加了gif,它很好用,但是error()停止工作,gif总是在运行。

新代码是

RequestOptions requestOptions = new RequestOptions();
requestOptions.error(R.drawable.poster_placeholder);

Glide.with(context)
     .setDefaultRequestOptions(requestOptions)
     .load(film.getPoster())
     .thumbnail(Glide.with(context)
     .load(R.drawable.placeholdergif)).into(poster);

我需要一个使error()再次起作用的解决方案 或其他显示加载图像直到加载图像的方式。

1 个答案:

答案 0 :(得分:0)

使用26.1.0(支持库)中发布的CircularProgressDrawable,现在这非常简单:

  CircularProgressDrawable circularProgressDrawable = 
  CircularProgressDrawable(this);
  circularProgressDrawable.strokeWidth = 5f;
  circularProgressDrawable.centerRadius = 30f;
  circularProgressDrawable.start();

  Glide.with(context)
  .setDefaultRequestOptions(requestOptions)
  .load(film.getPoster())
  .thumbnail(Glide.with(context)
  .placeholder(circularProgressDrawable)
  .into(a_main_image);
}