递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 11312|回复: 2
打印 上一主题 下一主题

[安卓] 圆形图片框

[复制链接]

128

主题

342

帖子

2121

积分

金牌会员

Rank: 6Rank: 6

积分
2121
跳转到指定楼层
楼主
发表于 2023-11-30 15:59:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
圆形图片框加载图片时崩溃。
堆栈跟踪(崩溃信息):  
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

请大老给看一下什么问题?谢谢!
回复

使用道具 举报

18

主题

347

帖子

3091

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
3091
沙发
发表于 2023-11-30 17:07:22 来自手机 | 只看该作者
好像是图片太大了,需要缩放
回复

使用道具 举报

452

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
42317
板凳
发表于 2023-11-30 18:24:12 | 只看该作者
图片太大了,内存溢出。

用  图像加载工具类  直接加载圆形图片
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2025-3-13 06:09 , Processed in 0.082613 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表