android– 内存不足,加载imageViews

android– 内存不足,加载imageViews,第1张

概述我有一个scrollview,它有通过AsyncTask加载的小图像缩略图,并将图像URL抛出到imageView.它们是动态添加的,然后在顶部,是一个主imageView,它保存您单击的缩略图的图像.一切都运行良好,直到缩略图中有大约10张图片……我通过与缩略图相同的方式加载mainImageurl,因此当他们点击

我有一个scrollvIEw,它有通过AsyncTask加载的小图像缩略图,并将图像URL抛出到imageVIEw.

它们是动态添加的,然后在顶部,是一个主imageVIEw,它保存您单击的缩略图的图像.

一切都运行良好,直到缩略图中有大约10张图片……

我通过与缩略图相同的方式加载mainImage url,因此当他们点击拇指中的图像时,它会将其加载到顶部.

我正在回收方法本身的位图,但是当加载超过10个图像时,它似乎耗尽内存并崩溃(缩略图加载正常,但是当我点击加载主图像时崩溃)

任何帮助赞赏

这是我使用加载图像的代码(缩略图主):

    private class DownloadImageTask extends AsyncTask<String, VoID, Bitmap> {      ImageVIEw bmImage;      public DownloadImageTask(ImageVIEw bmImage) {          this.bmImage = bmImage;      }  protected Bitmap doInBackground(String... urls) {      String urldisplay = urls[0];      Bitmap mIcon11 = null;      try {        inputStream in = new java.net.URL(urldisplay).openStream();        mIcon11 = BitmapFactory.decodeStream(in);      } catch (Exception e) {          Log.e("Error", e.getMessage());          e.printstacktrace();      }      return mIcon11;  }  protected voID onPostExecute(Bitmap result) {      bmImage.setimageBitmap(result);  }    }

解决方法:

只需在你的图像上实现这个…它会将你的图像减少4倍

public static Bitmap getimage(byte[] image) {        BitmapFactory.Options config = new BitmapFactory.Options();        config.inPreferredConfig = Bitmap.Config.RGB_565;        config.inSampleSize = 4;        return BitmapFactory.decodeByteArray(image, 0, image.length,config);    }
总结

以上是内存溢出为你收集整理的android – 内存不足,加载imageViews全部内容,希望文章能够帮你解决android – 内存不足,加载imageViews所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1118918.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存