从其子片段替换主片段

时间:2016-07-15 17:22:57

标签: java android android-fragments

enter image description here

我尝试将MainFragment替换为Fragment ChildFragment的其他MainFragment。我使用这部分代码:

 android.support.v4.app.FragmentManager fragmentManager = getFragmentManager();
                    Fragment fragment = null;
                    fragment = MainFragment2.class.newInstance();
                    fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();
                    fragmentManager.executePendingTransactions();

问题是,MainFragment被破坏并且替换成功,但问题是Child的{​​{1}}永远不会被破坏和子方法(破坏,暂停,停止..从未打过电话(我需要那些方法)。它们保留在内存中,当在MainFragment的App Activities方法中调用子片段时,会调用它。奇怪。我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

创建界面:

class Activity exteds... implements MainNavigation
      public void replaceFragment() {
          //Replace fragment here.
      }

主要活动

  private MainNavigation mainNav;
  public void onAttach(Context context) {
        mainNav = (MainNavigation) context;
   }

使用此活动的所有孩子:

action.onClickListner(new View.OnCLickListneer() {
        mainNav.replaceFragment();
    }

替换你想要的片段。

Date()