递归火山软件开发平台

标题: 圆形图片框 [打印本页]

作者: 商继珠    时间: 2023-11-30 15:59
标题: 圆形图片框
圆形图片框加载图片时崩溃。
堆栈跟踪(崩溃信息):  
java.lang.OutOfMemoryError: Failed to allocate a 35712588 byte allocation with 4294376 free bytes and 4MB until OOM
        at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
        at android.graphics.Bitmap.nativeCreate(Native Method)
        at android.graphics.Bitmap.createBitmap(Bitmap.java:879)
        at android.graphics.Bitmap.createBitmap(Bitmap.java:856)
        at android.graphics.Bitmap.createBitmap(Bitmap.java:776)
        at android.graphics.Bitmap.createBitmap(Bitmap.java:701)
        at com.hs.wlgh.RoundImageView.getCroppedRoundBitmap(RoundImageView.java:88)
        at com.hs.wlgh.RoundImageView.onDraw(RoundImageView.java:72)
        at android.view.View.draw(View.java:17185)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.draw(View.java:17188)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.draw(View.java:17188)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.widget.ListView.drawChild(ListView.java:3508)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.widget.AbsListView.dispatchDraw(AbsListView.java:2644)
        at android.widget.ListView.dispatchDraw(ListView.java:3503)
        at android.widget.ExpandableListView.dispatchDraw(ExpandableListView.java:351)
        at android.view.View.draw(View.java:17188)
        at android.widget.AbsListView.draw(AbsListView.java:4315)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.draw(View.java:17188)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.updateDisplayListIfDirty(View.java:16162)
        at android.view.View.draw(View.java:16951)
        at android.view.ViewGroup.drawChild(ViewGroup.java:3754)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3540)
        at android.view.View.draw(View.java:17188)
        at com.android.internal.policy.DecorView.draw(DecorView.java:754)
        at android.view.View.updateDisplayListIfDirty(View.java:16167)
        at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:648)
        at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:654)
        at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:762)
        at android.view.ViewRootImpl.draw(ViewRootImpl.java:2800)
        at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2608)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2215)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6338)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
        at android.view.Choreographer.doCallbacks(Choreographer.java:686)
        at android.view.Choreographer.doFrame(Choreographer.java:621)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6190)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:892)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)


java.lang.OutOfMemoryError: Failed to allocate a 35712588 字节 allocation with 16777216 free bytes and 17MB until OOM

请大老给看一下什么问题?谢谢!
作者: weilai    时间: 2023-11-30 17:07
好像是图片太大了,需要缩放
作者: 创世魂    时间: 2023-11-30 18:24
图片太大了,内存溢出。

用  图像加载工具类  直接加载圆形图片




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4