我尝试将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
方法中调用子片段时,会调用它。奇怪。我在这里做错了什么?
答案 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()