BitmapFactory中的内存不足错误

山姆

今天,我的应用崩溃了,内存不足错误。


android.graphics.BitmapFactory.nativeDecodeAsset中的java.lang.OutOfMemoryError

我只使用位图工厂为操作栏制作了背景

代码:

BitmapDrawable background = new BitmapDrawable (BitmapFactory.decodeResource(getResources(), R.drawable.actionbar)); 
         background.setTileModeX(android.graphics.Shader.TileMode.REPEAT); 
         actionbar.setBackgroundDrawable(background);

在活动开始时不会发生此错误,而是在更改许多活动后才会发生。

有人可以告诉我如何解决此问题

编辑编辑

这是开发人员控制台中的错误消息:

java.lang.IllegalStateException: Could not execute method of the activity
at android.view.View$1.onClick(View.java:3838)
at android.view.View.performClick(View.java:4475)
at android.view.View$PerformClick.run(View.java:18786)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5419)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1187)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at android.view.View$1.onClick(View.java:3833)
... 11 more
Caused by: java.lang.OutOfMemoryError
at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:596)
at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444)
at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:832)
at android.content.res.Resources.loadDrawable(Resources.java:2988)
at android.content.res.Resources.getDrawable(Resources.java:1558)
at android.widget.ImageView.resolveUri(ImageView.java:646)
at android.widget.ImageView.setImageResource(ImageView.java:375)
at com.packagename.pp.Activitytwo.disableAnswer(Activitytwo.java:435)
at com.packagename.pp.Activitytwo.submitAnswer(Activitytwo.java:230)
... 14 more
约瑟夫

您的代码有内存泄漏。考虑使用WeakReferenceWeakHashMapSoftReference以避免强引用。在活动的onLowMemory方法上释放未使用的资源和变量。

你也可以使用该选项BitmapFactory.Options位图解码的显示例子在这里

我在这里发布了一些解决此问题的提示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android:内存不足错误StringBuilder

来自分类Dev

增加堆以避免WEKA中的内存不足错误

来自分类Dev

内存不足错误VBA-Excel

来自分类Dev

Scikit学习MultinomialNB中的内存不足错误

来自分类Dev

mysql内存不足错误

来自分类Dev

Android BitmapFactory.decodeFile变慢直到内存不足

来自分类Dev

Closure Compiler(ccjs)内存不足错误

来自分类Dev

SQLite游标错误:内存不足

来自分类Dev

内存不足错误| 在WAS 8上部署

来自分类Dev

NetBeans内存不足错误

来自分类Dev

解释ElasticSearch内存不足错误

来自分类Dev

symfony中的内存不足错误

来自分类Dev

Matlab中的mvregress的“内存不足”错误

来自分类Dev

getDrawable()的内存不足错误

来自分类Dev

翻新中的多个队列会导致内存不足错误?

来自分类Dev

Android Studio内存不足错误ViewFlipper

来自分类Dev

Fontconfig错误-“内存不足”

来自分类Dev

从OCaml中的软内存不足错误中恢复

来自分类Dev

gridView Android Eclipse中的内存不足错误

来自分类Dev

增加堆以避免WEKA中的内存不足错误

来自分类Dev

Fontconfig错误-“内存不足”

来自分类Dev

ConnectionQueueStatsProvider的内存不足错误

来自分类Dev

Imageview中的Android内存不足错误

来自分类Dev

如果多次使用,则Android BitmapFactory.decodeResource内存不足

来自分类Dev

内核中的“ while” /“ for”循环导致CUDA内存不足错误?

来自分类Dev

Android Studio中的内存不足错误

来自分类Dev

避免递归python函数中的“内存不足”错误

来自分类Dev

ShowCaseView内存不足错误

来自分类Dev

内存不足错误 imageview