如何监听毕加索(安卓)加载完成事件?

2022-08-31 10:48:13

有没有办法在使用构建器时监听毕加索的事件,例如:

Picasso.with(getContext()).load(url).into(imageView);

我正在尝试调用父级,以便它可以正确调整大小,但我不知道如何设置侦听器或回调器。requestLayout()invalidate()GridView

我看到毕加索有错误事件报告,但是否有成功事件?


答案 1

您可以使用 来获取成功和错误事件。只需在您的请求中添加一个新的回调,如下所示:Callback

Picasso.with(getContext())
    .load(url)
    .into(imageView, new com.squareup.picasso.Callback() {
                        @Override
                        public void onSuccess() {

                        }

                        @Override
                        public void onError() {

                        }
                    });

然后,您可以在 onSuccess 回调中执行任何更改和修改。


答案 2

如果需要在将位图加载到视图之前访问位图,请尝试使用 :

private Target target = new Target() {
      @Override
      public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {       
      }
      @Override
      public void onBitmapFailed() {
      }
}

在调用方法中:

Picasso.with(this).load("url").into(target);

理想情况下,您可以直接在视图或视图持有者对象上实现 Target。

希望这有帮助


推荐