我的android项目中出现了内存错误,它指向了这个声明:
bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
是否有任何其他方法可以创建ARGB_8888
位图,以免我出现内存错误?
建议表示赞赏。 在此先感谢:)
答案 0 :(得分:2)
Android上的位图存储异常存在许多问题,其中许多都在stackoverflow上讨论过。如果你查看现有的问题,看看你的问题是否与现有问题相匹配,那么最好是最好的,如果没有,请写出使你的情况不同的原因。
不同的位图配置将具有不同的内存占用量。 RGB_565 是 16位颜色格式。 ARGB_8888 是 32位格式。
无论您选择哪种 getHolder()。setFormat(); 配置,或者如何绘制, ARGB_8888位图都是比 RGB_565 格式的位图要大得多(在内存中)。 所以最好使用 RGB_565 格式而不是 ARGB_8888 。
一些例子:
Out of memory exception due to large bitmap size
Android: out of memory exception in Gallery
Android handling out of memory exception on image processing
等:https://stackoverflow.com/search?q=android+out+of+memory+exception+bitmap
有关详细信息,请访问此处。 android - out of memory exception when creating bitmap