我有 FragmentA 和 FragmentB 。
我使用add
(非替换)片段事务将 FragmentA 添加到Activity。 FragmentA 中的按钮会对其活动进行回调,然后生成add
片段事务以添加 FragmentB 。
我使用 FragmentA 和 FragmentB 中的变量值(在线提取)更新ActionBar的标题。
在我上面概述的片段交易之后,如果我在 FragmentB 并按下后退按钮(现在我在 FragmentA ),标题为ActionBar仍然是 FragmentB 。
所以当我来自 FragmentB 时,我想知道在 FragmentA 上调用了哪些生命周期方法,所以我可以从那里更新Actionbar。
答案 0 :(得分:0)
我不知道在弹出backstack时是否有一个方法被调用,但你可以做的是在包含片段的Activity类中覆盖onBackPressed,调用fragmentManager.popBackStackImmediate。此方法返回一个布尔值,如果为真,则从fragmentB转到fragmentA(或转到任何其他先前的片段)。您在活动课程中,因此无论如何您都可以更新您的ActionBar。 还有一件事,如果fragmentManager.popBackStackImmediate为true,请不要调用super.onBackPressed()!!!
答案 1 :(得分:-1)
onStart()
方法显然是适应的方法。从后台堆栈来的时候,它总会被调用。