【发布时间】:2015-10-01 16:00:19
【问题描述】:
我正在开发 Android 应用程序。 在单个活动中,我正在替换片段。 经过一些迭代后,我的应用程序在没有任何强制关闭消息的情况下关闭,也不例外。
在搜索时,我得到了一件事。 如果我使用
在片段管理器上跟踪片段数getSupportFragmentManager().getFragments().size()
当我正在替换片段时,只有一个片段处于活动状态并且后堆栈中没有片段存在,它会继续增加。
例子:
- 片段 1 > 片段 2:片段数为 2
- 片段 1 > 片段 2 > 片段 3:片段数为 3
- 片段 1 > 片段 2 > 片段 3 > 片段 2 > 片段 1:片段数为 3
这是我用于片段事务的代码:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content, fragmentStep1,
ApplicationTags.FRAGMENT_TAG_PAGE_1)
.disallowAddToBackStack().commit();
getFragmentManager().executePendingTransactions();
我需要从 fragentmanager 中删除所有这些片段,以减少应用程序的内存使用量。
请帮我解决这个问题。 提前致谢。
【问题讨论】:
标签: android android-fragments android-activity memory-leaks out-of-memory