onResume喜欢片段中的覆盖

时间:2015-03-16 11:08:49

标签: android

场景

我有一个包含2个片段的活动。

  1. 活动A已启动。
  2. 片段B完全接管活动A(UI明智)。 这里取决于操作,Fragment C启动并接管整个UI
  3. 目标

    我希望能够知道用户何时从Fragment C回来,然后回到片段B上。

    问题

    我们都知道我们不能在Fragment B中使用onResume覆盖,因为这个onResume与Activity的生命周期紧密结合。如果在片段B中有像onResume这样的覆盖,那对我的情况确实有帮助。我知道当Fragment C超越它时片段B没有暂停,所以我知道onResume就像策略一样不行。

    解决方案

    我想我可以在Activity A中附加一个回调onBackPressed。就像是 。

    Psuedo Code

     private onBackPressed()
     {
        if (currentFragment == Fragment C) {
           FragmentB = findFragmentB();
           //call custom method written in FragmentB
           FragmentB.onBackPressed();
        } else {
           super.onBackPressed();
        }
     }
    

    在我继续之前,这是正确的进入方向吗?

2 个答案:

答案 0 :(得分:0)

确切地说,如果这个问题有最合适和最简单的解决方案。我想你应该继续这个。我找到了其他方法,但这比其他方式更好,更容易

答案 1 :(得分:-1)

单独的东西应该有效

BaseFragment currFrag = (BaseFragment) manager.findFragmentById(R.id.fragmentname);
currFrag.onFragmentResume();

这里解释不多,onFragmentResume字面上调用片段的onResume。