如何在 backstack 变化时调用 Fragment 中的方法

问题描述 投票:0回答:1

我有 2 个片段 FragmentA 和 FragmentB

从 FragmentA 我打开 FragmentB

val transaction = fragmentManager.beginTransaction()
transaction.add(CONTAINER_VIEW_ID, FRAGMENT_B_INSTANCE, FRAGMENT_B_TAG)
transaction.addToBackStack(null)
transaction.commit()

当在 FragmentB 中按下按钮时调用下面的方法,当按下返回时,返回到 FragmentA

fragmentManager.popBackStack()

我需要在 FragmentA 中调用 onResume 或自定义方法(用于刷新 UI 和数据),当从 FragmentB 返回到 FragmentA 时。 (FragmentA onResume 不会调用,因为在这种情况下不调用 Activity onResume

我该怎么做?

android android-fragments onresume fragment-backstack
1个回答
0
投票

如果你不想回到 FragmentA 那么你必须在你去 FragmentB 时从堆栈中移除。因此,以这种方式从 FragmentA 移动到 FragmentB 再到 FramentC 但从 FragmentC 返回到 FragmentB 而不是 FragmentA

© www.soinside.com 2019 - 2024. All rights reserved.