Java Android动画垃圾收集问题 我有一个android中的AnimationDrawables的arraylist,每个 元素中对应于特定动画的元素。每个动画 单击特定按钮时发生 同步向动画(单击按钮时)结果添加帧 应用程序响应速度慢。所以我想用一个 asynctask为我获取帧,它第一次运行良好 我加载活动 第二次速度非常慢,即动画出现在 长时间。如果我试图缓存动画(通过 动画对象(静态),它可以正常工作2或3次,但 再次减速 对于安卓冰淇淋三明治:我也用过 中的android:hardwareAccelerated=“true”android:largeHeap=“true” 清单文件。记忆似乎是个问题。大约 每个动画都需要500Kb内存

Java Android动画垃圾收集问题 我有一个android中的AnimationDrawables的arraylist,每个 元素中对应于特定动画的元素。每个动画 单击特定按钮时发生 同步向动画(单击按钮时)结果添加帧 应用程序响应速度慢。所以我想用一个 asynctask为我获取帧,它第一次运行良好 我加载活动 第二次速度非常慢,即动画出现在 长时间。如果我试图缓存动画(通过 动画对象(静态),它可以正常工作2或3次,但 再次减速 对于安卓冰淇淋三明治:我也用过 中的android:hardwareAccelerated=“true”android:largeHeap=“true” 清单文件。记忆似乎是个问题。大约 每个动画都需要500Kb内存,java,android,animation,garbage-collection,Java,Android,Animation,Garbage Collection,有人能推荐一个替代方案吗? 我知道强制垃圾是不可能的。那么我能做什么呢?这取决于你是如何制作动画的。另外,您是否一直在加载和卸载数据?如果你管理得当,500k可能不会太糟糕。图像有多大?@Joe:我在为每个动画使用帧。不断地加载和卸载?我不太清楚您的意思,但是是的,一旦每个动画完成(在活动中),我就使用arraylist.set(index,null)方法将其数据设置为null。问题发生在我离开活动并再次参加活动时。这是因为指向这些空块的悬空指针不是垃圾收集的。

有人能推荐一个替代方案吗?
我知道强制垃圾是不可能的。那么我能做什么呢?

这取决于你是如何制作动画的。另外,您是否一直在加载和卸载数据?如果你管理得当,500k可能不会太糟糕。图像有多大?@Joe:我在为每个动画使用帧。不断地加载和卸载?我不太清楚您的意思,但是是的,一旦每个动画完成(在活动中),我就使用arraylist.set(index,null)方法将其数据设置为null。问题发生在我离开活动并再次参加活动时。这是因为指向这些空块的悬空指针不是垃圾收集的。