如何解决这个奇怪的问题" IllegalArgumentException:位图大小超过32位"

时间:2016-09-27 11:25:42

标签: android illegalargumentexception

启动特定dialogFragment时会出现此异常。我很困惑,因为它没有显示我的任何项目课程,因此我不知道如何解决这个问题。此外,我没有在片段中使用Bitmap类,所以这真的很混乱。

请你有解决方案吗?

09-27 12:11:47.440 4381-4381/com.ozuf.weper E/AndroidRuntime: FATAL EXCEPTION: main
   Process: com.ozuf.weper, PID: 4381
   java.lang.IllegalArgumentException: bitmap size exceeds 32 bits
       at android.graphics.Bitmap.nativeCreate(Native Method)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:908)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:879)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:846)
       at android.graphics.drawable.RippleDrawable.updateMaskShaderIfNeeded(RippleDrawable.java:691)
       at android.graphics.drawable.RippleDrawable.drawBackgroundAndRipples(RippleDrawable.java:803)
       at android.graphics.drawable.RippleDrawable.draw(RippleDrawable.java:641)
       at android.view.View.getDrawableRenderNode(View.java:15867)
       at android.view.View.drawBackground(View.java:15816)
       at android.view.View.draw(View.java:15626)
       at android.view.View.updateDisplayListIfDirty(View.java:14568)
       at android.view.View.getDisplayList(View.java:14590)
       at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3588)
       at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3567)
       at android.view.View.updateDisplayListIfDirty(View.java:14528)
       at android.view.View.getDisplayList(View.java:14590)
       at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3588)
       at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3567)
       at android.view.View.updateDisplayListIfDirty(View.java:14528)
       at android.view.View.getDisplayList(View.java:14590)
       at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3588)
       at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3567)
       at android.view.View.updateDisplayListIfDirty(View.java:14528)
       at android.view.View.getDisplayList(View.java:14590)
       at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3588)
       at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3567)
       at android.view.View.updateDisplayListIfDirty(View.java:14528)
       at android.view.View.getDisplayList(View.java:14590)
       at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:273)
       at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:279)
       at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:318)
       at android.view.ViewRootImpl.draw(ViewRootImpl.java:2575)
       at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2385)
       at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2012)
       at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1073)
       at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5988)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
       at android.view.Choreographer.doCallbacks(Choreographer.java:580)
       at android.view.Choreographer.doFrame(Choreographer.java:550)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:135)
       at android.app.ActivityThread.main(ActivityThread.java:5910)
       at java.lang.reflect.Method.invoke(Native Method)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)

2 个答案:

答案 0 :(得分:0)

尝试使用HierarchyViewer分析您的应用程序,您应该分析应用程序中的内存。我想你只是有泄漏。

答案 1 :(得分:0)

应用标记下的 AndroidManifest 文件中的

使用此

  

机器人:largeHeap = “真”