gpt4 book ai didi

android - 如何让 Android 在我不需要之前不回收我的位图?

转载 作者:行者123 更新时间:2023-11-29 18:10:25 25 4
gpt4 key购买 nike

我正在获取 View 的绘图缓存,即设置为 Activity 的 contentView。然后我为 Activity 设置新的内容 View 并将绘图缓存传递给它。但是 Android 回收了我的位图,我得到了这个异常:

06-13 01:58:04.132: E/AndroidRuntime(15106): java.lang.RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap@40e72dd8

有什么办法可以解决吗?我有一个扩展 Bitmap 类的想法,但它是最终的。为什么GC要回收它?

最佳答案

被回收的位图并不意味着它是垃圾收集器,它意味着 Bitmap.recycle() 是有意调用的。我不熟悉具体的代码,但我很确定当你用新的东西调用 setContentView() 时,它会破坏以前的 View (因为它假设你不想要他们了)。它似乎正在点击一个 ImageView 并在其 Bitmap 上调用 recycle() 成为一个好公民,然后给你你的错误。我的猜测是不支持您尝试执行的操作。

关于android - 如何让 Android 在我不需要之前不回收我的位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11005548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com