Android:嵌套片段的父片段

Abh*_*hav 22 android android-fragments android-nested-fragment

getParentFragment()来自我的嵌套片段的A 返回一个null.我意识到获得一个null意味着片段附加到活动而不是嵌套容器片段.但我明确地使用孩子将子片段嵌套在父片段中FragmentManager,因此认为我不应该得到一个null.你能告诉我我错过了什么吗?

父片段

public class UsageBreakUp extends Fragment implements Filter.OnFragmentInteractionListener {

  ....

  @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        getChildFragmentManager().beginTransaction().add(R.id.filter, new Filter()).commit();
    }

...

}
Run Code Online (Sandbox Code Playgroud)

儿童片段

public class Filter extends Fragment {

...


    public Filter() {
        if (getParentFragment() == null)
            Log.d(LOG_TAG, "parent fragment is null");
    }

...

}
Run Code Online (Sandbox Code Playgroud)

Abh*_*hav 38

我正在调用getParentFragment()子片段的构造函数,因此在子片段完全创建之前.转移getParentFragment()onCreateView()解决问题.移动不是问题,因为我正在调用getParentFragment()检查父片段是否已实现子片段交互监听器.