基本上,对话框会使后台活动停止。因此,DialogFragment
以增加的复杂性实现了相同的功能。那么为什么应该使用 DialogFragment
,虽然有各种子类的 Dialog
可用呢。
基本上,对话框会使后台活动停止。因此,DialogFragment
以增加的复杂性实现了相同的功能。那么为什么应该使用 DialogFragment
,虽然有各种子类的 Dialog
可用呢。
片段
在您的活动中使用,但要将片段呈现为对话框(窗口),则需要使用FragmentTransaction
并跟随片段的生命周期,然后使用DialogFragment
。但是,您也可以使用简单的Dialog
,但这与片段的生命周期无关。
根据Google文档:
如果需要,DialogFragment仍然可以选择用作普通片段。 如果您有一个片段,在某些情况下应该显示为对话框,而在其他情况下嵌入到较大的UI中,则这很有用。
FragmentDialog是一个可以作为片段使用的碎片对话框,它可以:
used as fragment, e.g.:
FragmentTransaction trans = getSupportFragmentManager().beginTransaction();
trans.add(R.id.navigation_fragment, mFriendFragment);
trans.commit();
used as dialog, e.g.:
FragmentManager fm = getFragmentManager();
UnsubscribeTabletFragment fragment = new UnsubscribeTabletFragment();
fragment.show(fm, "dialog");
如果您的Android应用程序中已经使用了片段(Fragment)实现动态布局,那么当您需要在操作按钮点击或其他点击事件中使用它时,DialogFragment比普通对话框更加方便。