重新打开应用程序时使用glide重新加载图像

时间:2019-04-13 07:37:01

标签: java android image android-glide

Firebase上的图像正在通过滑行加载。第一次加载成功,但是当您从背面退出应用程序并再次运行该应用程序时,图像无法加载存在问题。

图像正在Baseadapter中加载。重新启用该应用程序后,不会调用“ onResourcesReady”。

if (convertView == null) {
            viewholder = new ViewHolder();
            convertView = inflater.inflate(R.layout.item, parent, false);

            viewholder.imageView = convertView.findViewById(R.id.image_view);
            viewholder.textDate = convertView.findViewById(R.id.text_date);
            viewholder.textContents = convertView.findViewById(R.id.text_contents);

            viewholder.imageView.setLayoutParams(new LinearLayout.LayoutParams(width, width));
            convertView.setTag(viewholder);
        } else {
            viewholder = (ViewHolder) convertView.getTag();
        }

        String date = itemList.get(position).getYear() +
                " / " +itemList.get(position).getMonth() +
                " / " + itemList.get(position).getDay();

        if (viewholder.imageView.getDrawable() == null) {
            Glide.with(context).clear(viewholder.imageView);
        }

        if (TextUtils.isEmpty(itemList.get(position).getImages())) {
            viewholder.imageView.setVisibility(View.GONE);
        }

        Log.d(TAG, TAG + " ///// uri : " + itemList.get(position).getImages());
        requestManager
                .load(itemList.get(position).getImages())
                .listener(new RequestListener<Drawable>() {
                    @Override
                    public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                        Log.d(TAG, "onLoadFailed : " + e.getMessage());
                        Log.d(TAG, "isFirstResource : " + isFirstResource);
                        return false;
                    }

                    @Override
                    public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                        Log.d(TAG, "onRecousrceReady()");

                        return false;
                    }
                })
                .into(viewholder.imageView);

此代码是getView()的一部分。此BaseAdapter用于ListView。

MainActivity正在交付和使用“ RequestManager”。

如何始终加载图像?

有什么办法可以重置滑行吗?我很难这样做,因为它看起来不正常。帮我。 ;(

1 个答案:

答案 0 :(得分:0)

您可以检查您最近的依赖滑行也可以管理现金。