gpt4 book ai didi

android - Fresco 图片加载回调

转载 作者:太空宇宙 更新时间:2023-11-03 12:30:28 32 4
gpt4 key购买 nike

我刚刚迁移到 Fresco 库以在我的应用程序中加载图像。

我需要监听图像加载事件,当然我在文档中阅读了这篇文章 Listening to download events

这正是我所需要的,但是......几乎没有什么是我不喜欢的。

我的目标是在无法从网上下载时隐藏 View

  1. 我无法从 Controller 引用 SimpleDraweeView,即使在回调方法中也是如此。我需要隐藏 View,但似乎无法引用它。

  2. 每次我需要加载图像时,我需要使用 Builder 创建 Controller 对象,当使用这种方法处理大量带有图像的项目列表时,这可能会导致性能问题.

holder.simpleDraweeViewImage.setController(Fresco.newDraweeControllerBuilder()
.setControllerListener(controllerListener)
.setUri(currentItem.getImage())
.build());

我需要能够从 Controller 引用 SimpleDraweeView,并且在 MVC 模式方法中,如果 Controller 知道 View 似乎没问题。

请建议实现我的目标的最佳方式。

谢谢。

最佳答案

可以隐藏 onFailure 方法:

ControllerListener listener = new BaseControllerListener<ImageInfo>() {

@Override
public void onFinalImageSet(String id, @Nullable ImageInfo imageInfo, @Nullable Animatable animatable) {
//Action on final image load
}
@Override
public void onFailure(String id, Throwable throwable) {
//Action on failure
}

};
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setUri(uri)
.setControllerListener(listener)
.build();
draweeView.setController(controller);

关于android - Fresco 图片加载回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35682039/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com