【发布时间】:2012-08-22 19:01:18
【问题描述】:
基本上对话框会在后台停用活动。所以DialogFragment 做同样的事情增加了复杂性。那么尽管Dialog 的各种子类都可用,为什么还要选择DialogFragment。
【问题讨论】:
标签: android dialog android-widget
基本上对话框会在后台停用活动。所以DialogFragment 做同样的事情增加了复杂性。那么尽管Dialog 的各种子类都可用,为什么还要选择DialogFragment。
【问题讨论】:
标签: android dialog android-widget
Fragments 在您的活动中使用,但要使用FragmentTransaction 将片段呈现为对话框(窗口)并跟进片段的生命周期,您需要使用DialogFragment。但是,您也可以使用简单的Dialog,但这与片段的生命周期无关。
根据谷歌文档:
DialogFragment 仍然可以选择性地用作普通片段,如果 想要的。如果您有一个片段,在某些情况下,这很有用 应显示为对话框,其他内容应嵌入更大的 UI。
【讨论】:
FragmentDialog 是一个片段,可以:
用作片段,例如:
FragmentTransaction trans = getSupportFragmentManager().beginTransaction();
trans.add(R.id.navigation_fragment, mFriendFragment);
trans.commit();
用作对话框,例如:
FragmentManager fm = getFragmentManager();
UnsubscribeTabletFragment fragment = new UnsubscribeTabletFragment();
fragment.show(fm, "dialog");
因此,如果您有一个片段,并且该片段有时用作片段,有时用作对话框,那么您应该使用这个。
【讨论】:
DialogFragment 允许在您的应用程序上重用对话框的一部分。就像片段为你的布局做的一样。
这里有一篇关于 DialogFragment 的好文章: http://android-developers.blogspot.fr/2012/05/using-dialogfragments.html
【讨论】:
当您的 android 应用程序中已经使用 Fragment 进行了动态布局时,您需要通过操作按钮单击或其他单击在对话框中/在对话框中使用它,所以这次 dialogFragment 比普通对话框更方便。
【讨论】: