16

基本上对话框会在后台停用活动。因此DialogFragment,随着复杂性的增加,它也是如此。DialogFragment那么,尽管有各种Dialog可用的子类,为什么还要去做呢。

4

4 回答 4

7

Fragments在您的活动中使用 with ,但要将片段呈现为对话框(窗口)使用FragmentTransaction并跟进片段的生命周期,您需要使用DialogFragment. 但是,您也可以使用 simple Dialog,但它与片段的生命周期无关。

根据谷歌文档:

如果需要,仍然可以选择将 DialogFragment 用作普通片段。如果您有一个片段在某些情况下应该显示为对话框,而其他片段则嵌入到更大的 UI 中,这将非常有用。

于 2012-08-28T09:36:48.183 回答
4

FragmentDialog 是一个片段,它可以是:

  1. 用作片段,例如:

    FragmentTransaction trans = getSupportFragmentManager().beginTransaction();
    trans.add(R.id.navigation_fragment, mFriendFragment);
    trans.commit();
    
  2. 用作对话框,例如:

    FragmentManager fm = getFragmentManager();
    UnsubscribeTabletFragment fragment = new UnsubscribeTabletFragment();
    fragment.show(fm, "dialog");
    

因此,如果您有一个片段,并且该片段有时用作片段,有时用作对话框,那么您应该使用这个片段。

于 2016-08-08T16:21:34.190 回答
3

DialogFragment 允许在您的应用程序上重用对话框的一部分。就像片段为你的布局做的一样。

在这里你有一篇关于 DialogFragment 的好文章: http ://android-developers.blogspot.fr/2012/05/using-dialogfragments.html

于 2012-08-28T09:32:11.403 回答
1

当您已经在使用片段的 android 应用程序中使用动态布局时,您需要通过操作按钮单击或其他单击在对话框中/在对话框中使用它,所以这次 dialogFragment 比普通对话框更方便。

于 2012-10-08T09:54:11.530 回答