由于之前没有过fresco框架,最近发现项目中SimpleDraweeView加载url没有加载出图片显示默认图,点击无法响应点击事件;但是快速多点击几次又可以响应点击事件;这种现象十分奇怪?
以下是加载方法;
public static void loadImageView(String url, SimpleDraweeView view, int defaultResource) {
Uri uri = Uri.parse(url);
GenericDraweeHierarchy hierarchy = new GenericDraweeHierarchyBuilder(MyApplication.getContext().getResources())
.setFadeDuration(100)
.setPlaceholderImage(defaultResource)//默认图
.setFailureImage(defaultResource)//加载失败
.setPlaceholderImageScaleType(ScalingUtils.ScaleType.CENTER_CROP)
.setActualImageScaleType(ScalingUtils.ScaleType.CENTER_CROP)
.build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setUri(uri)
.setRetainImageOnFailure(true)
.setTapToRetryEnabled(true)
.setOldController(view.getController())
.build();
view.setHierarchy(hierarchy);
view.setController(controller);
}
经过排查之后,发现原来是setTapToRetryEnabled为启动点击重试(最多重试4次),默认情况下是false;所以导致点击事件无法响应;
本文探讨了在使用Fresco框架加载图片时遇到的问题,即SimpleDraweeView加载URL图片显示默认图且点击无响应的现象。通过分析,发现问题是由于setTapToRetryEnabled设置为false,导致点击事件无法响应。文章提供了修改后的加载方法,确保点击事件能够正常工作。
1930

被折叠的 条评论
为什么被折叠?



