离线网络政策有时会让毕加索停止工作

时间:2017-05-17 13:36:57

标签: android android-recyclerview picasso image-loading

我正在尝试在我的应用程序中实现Data Saver模式。如果用户将其打开,则应用程序应仅加载已存储在缓存中的那些图像。

Picasso.with(context)
    .load(url)
    .networkPolicy(NetworkPolicy.OFFLINE)
    .into(new Target() {
        @Override
        public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
            Log.i(TAG, "onBitmapLoaded for item #" + position);
        }

        @Override
        public void onBitmapFailed(Drawable errorDrawable) {
            Log.i(TAG, "onBitmapFailed for item #" + position);
        }

        @Override
        public void onPrepareLoad(Drawable placeHolderDrawable) {
            Log.i(TAG, "onPrepareLoad for item #" + position);
        }
    });

大多数时候,它完美无缺。 问题是在某些情况下,只有onPrepareLoad被调用,之后才会调用onBitmapLoaded和onBitmapFailed。

ImageViews我试图填充Picasso加载的图像是RecyclerView的项目。每当我滚动然后返回时,每当RecyclerView再次加载项目时,它都会毫无问题地加载图像。

以前是否有人经历过这种行为?

编辑:

05-17 15:44:07.433 13570-13570/org.meightsoft.dailyfun.debug I/RecentsAdapter: onBindViewHolder for item #7
05-17 15:44:07.434 13570-13570/org.meightsoft.dailyfun.debug I/RecentsAdapter: onPrepareLoad for item #7

0 个答案:

没有答案