【发布时间】:2017-06-03 02:54:47
【问题描述】:
我正在使用 Fresco 将 GIF 加载到 RecyclerView 中的 SimpleDraweeViews 中。
我想先在 GIF 下载时加载静态缩略图,然后在 GIF 可用时立即加载。
它可以工作,但是当缩略图换成 GIF 时会出现白色闪烁。有什么办法可以避免吗?
将 fadeDuration 设置为 0 没有帮助。缓存 GIF 时我可以跳过缩略图,但我希望在所有情况下都避免闪烁。
视图很简单:
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/gif_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
而且代码看起来也很简单:
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setLowResImageRequest(ImageRequest.fromUri(thumbnailUrl))
.setUri(contentUrl)
.setAutoPlayAnimations(true)
.setOldController(draweeView.getController()).build();
draweeView.setController(controller);
这里有一个视频:https://www.dropbox.com/s/vkyqltm1hrrnvaz/gifFlicker.m4v?dl=0
它使用这个 GIF:http://www.furrytalk.com/wp-content/uploads/2015/01/kitten.gif
谢谢!
【问题讨论】: