我目前有一些带有一些代码的片段,我希望能够在对话框中显示这个片段,所以我使用的是DialogFragment。现在,我怎样才能确保我可以重用相同的片段而无需将代码复制到DialogFragment中?
答案 0 :(得分:3)
只需改为Fragment
延长DialogFragment
即可。您可以像以前一样正常添加布局,或者调用其中一个show方法将其显示为对话框。
您将它添加到容器中,DialogFragment.getShowsDialog()将返回true。如果将其显示为对话框,则返回false。如果需要,使用此标志将允许您根据片段是否显示为对话框而编写可能不同的逻辑。
答案 1 :(得分:0)
我假设您有一个CustomDialog,您可以覆盖onCreateView()
方法。一个简单的解决方案是在FrameLayout
的布局中添加DialogFragment
。
您可以在Fragment
中初始化onCreateView()
,然后使用FragmentTansaction将其添加到DialogFragment
。