【问题标题】:RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.BitmapRuntimeException: Canvas: 试图使用回收的位图 android.graphics.Bitmap
【发布时间】:2015-01-26 13:28:36
【问题描述】:

我有一个卡片视图,它有一个自定义适配器,它使用 Picasso(在 onBindViewHolder(lazy load) 内部)将图像加载到它的目标中。 自定义行有一个按钮,单击该按钮会打开在宽视图中显示图像的片段,使用原始图像视图中的位图 (在片段之前,我使用在 onSucess() 中将毕加索回调为“真”的布尔值检查位图是否已完全加载到主图像视图中。直到那时我的按钮被禁用),例如:

                BindViewHolder:

                Picasso.with(context)
            .load(cl.getUrlPhoto())
            .resize(500, 500)
            .error(R.drawable.images)
            .into(cardViewHolder.urlPhoto, new Callback() {
                @Override
                public void onSuccess() {
                    cardViewHolder.imgL=true;
                    cardViewHolder.fab.setEnabled(true);
                    cardViewHolder.pb_b.setVisibility(View.INVISIBLE);
                }

                @Override
                public void onError() {
                    cardViewHolder.imgL=false;
                    cardViewHolder.fab.setEnabled(false);
                    cardViewHolder.pb_b.setVisibility(View.GONE);
                }
            });

(我在这里检查布尔值是否为真,然后执行这部分代码)加载的片段部分:

              imageView.buildDrawingCache(true);
              Bitmap bitmap = imageView.getDrawingCache(true);
              BitmapDrawable bitmapDrawable = (BitmapDrawable)                                  
              imageView.getDrawable();                
              bitmap1 = bitmapDrawable.getBitmap();
              scaleImageView.setImageBitmap(bitmap1);

。但有时在图像仍在加载或加载时滚动,或者只是单击以查看完整图像 2-3 次它会崩溃并给出错误

" RuntimeException: Canvas: 试图使用回收的位图 android.graphics.Bitmap 。"

【问题讨论】:

    标签: android-fragments canvas bitmap


    【解决方案1】:

    当您尝试回收或设置为 null 由 Picasso 加载的图像时会引发此异常,这意味着 Picasso 库不期望加载的图像由它回收,当它尝试加载时抛出异常。希望这个解决方案适合你

    【讨论】:

      【解决方案2】:

      尝试用 Glide 替换 Picasso

      【讨论】:

      • 这太短了……你解释得更好
      猜你喜欢
      • 2012-07-25
      • 2011-05-15
      • 2014-08-24
      • 2014-04-03
      • 2012-12-17
      • 2013-06-25
      • 2015-05-01
      • 1970-01-01
      相关资源
      最近更新 更多