遵循Fresco的文件:http://frescolib.org/docs/listening-to-events.html
我已经设置了一个监听器来通知我这些事件,但是我需要知道的(并且无法在任何地方找到这些信息)是低分辨率呼叫也会通知听众。如果是这样,如何避免它,或者为低分辨率调用完全设置不同的监听器。对于那些想知道的人,Fresco可以在加载高分辨率版本之前加载低分辨率版本的图像,这就是调用回调的方式,这让我感到困惑。
这是我的代码,供参考:
/*
Here we create the controller, aggregating everything that has been done before and some other settings, and set the controller to our view.
*/
PipelineDraweeControllerBuilder builder = Fresco.newDraweeControllerBuilder();
builder.setLowResImageRequest(lowResRequest)
.setImageRequest(request)
.setTapToRetryEnabled(true)
.setControllerListener(controllerListener) // this is the callback listener
.setOldController(container.getController());
DraweeController controller = builder.build();
答案 0 :(得分:1)
如果要通知低分配请求的事件,则需要向低分配请求添加RequestListener:
ImageRequestBuilder.fromRequest(request)
.setRequestListener(requestListener)
.build();
如果原始图像请求的加载速度低于低分辨率,则Fresco将在低分辨率图像请求侦听器上调用onRequestCancelation。