2013-07-18 42 views
3

我正在使用自定义的DialogFragment。在onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)方法中,我膨胀了包含导致应用程序崩溃的另一个片段的布局。我该如何解决它?Android - 包含片段布局的DialogFragment

+0

向我们显示您的代码。 – Raghunandan

+0

是的,更多信息请!根据Logcat,为什么会发生崩溃?你可以显示你正在谈论的代码,包括这个其他片段 – mgibson

+0

我的问题很简单:)你如何将一个片段放在一个对话框片段中? –

回答

11

您不能在其他Fragments嵌套Fragments XML-Layouts。你必须添加代码。要将Fragment插入另一个Fragment,您必须使用特殊的FragmentManager - 小孩FragmentManager。您可以从父Fragment得到它:

//In the DialogFragment ('parent') get the child FragmentManager: 
FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); 
transaction.transaction.add(new MyCustomChildFragment(), "CustomTag"); 

我通常在onActivityCreated()添加子Fragments

+0

我无法理解你的答案。 getChildFragmentManager()不可用于DialogFragment。 –

+1

当然是这样的:https://developer.android.com/reference/android/app/Fragment.html#getChildFragmentManager() – thaussma

+3

只是试图嵌套在支持库的DialogFragment片段,它只是工作:) –