【发布时间】:2026-01-14 17:00:02
【问题描述】:
我有由MainActivity 创建的Fragment A。在这个Fragment A 里面是container View。我可以在Fragment A 内创建另一个Fragment B 并将其放入此容器中。
我想要实现的是将信息(字符串)从Fragment B 发送回Fragment A。
这是否可能,因为我发现的唯一选择是重新创建Fragment A,但这会复制旧的Fragment A 及其内容。片段 A(第一个)和片段 A(第二个)相互重叠,如果您一遍又一遍地重复此过程,这可能会导致严重的内存问题。
在Fragment A 中创建Fragment B 的示例:
fragmentManager?.let { fm ->
val ft = fm.beginTransaction()
val sh = FragmentB(info)
fragB = sh
ft.add(R.id.container, sh)
ft.commitAllowingStateLoss()
}
退出Fragment B 并再次启动Fragment A:
mainActivity?.startFragment(FragmentA(item.js.toString()))
【问题讨论】:
标签: android android-fragments fragmentmanager