android – onDetach在片段时调用

我很难在方向改变后显示相同的片段.我把它放到后台并弹回来.它会跳转到onCreateView等等,但它会调用onDetach,这会导致显示错误的片段..代码如下:

    //fragment
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {...}

    @Override
public void onDetach() {
    super.onDetach();
    this.getActivity().getFragmentManager().beginTransaction().addToBackStack(null);
}

在主要的

    if (getFragmentManager().getBackStackEntryCount()>1){
        setContentView(R.layout.activity_main);
        getFragmentManager().popBackStack();
    }

我错过了什么?
提前感谢您的帮助

最佳答案 每当您更改方向时,您的Activity都会被重新创建,因此您的Activity中托管的片段会被重新创建,因此您的片段将再次调用整个生命周期方法.

如果要使用片段处理配置更改,请检查以下链接:http://www.androiddesignpatterns.com/2013/04/retaining-objects-across-config-changes.html

点赞