如何结束已移除 View 的生命周期?

How to end the lifecycle of a removed View?

当我在一个 activity 中创建、添加和删除视图时,删除的视图的生命周期是什么?可以使用 removeView()removeAllViews().

删除它们

它们是否可以在删除后立即用于垃圾回收,还是会一直保留到 activity 消失?例如,因为所有视图的任何寄存器都附加或不附加。

我是否应该执行额外的步骤以快速将它们用于垃圾回收?

如果您有一个以编程方式创建的 View,那么您需要确保两件事以确保 View 已被 GC。

  1. 从您添加 ViewViewGroup 调用 removeView()。这是因为 ViewGroup 将维护对子项的引用。
  2. 确保您没有在代码中维护对 View 的任何引用,例如作为 Activity class 的字段。以这种方式维护对 View 的引用将防止它被 GC。

有几篇关于如何避免内存泄漏的好文章,包括 this one