此来源显示DialogFragment
已创建新Fragment
并屏蔽了所有屏幕(FragmentActivity
)。我需要在Dialog
中添加Fragment
,以便在我滚动屏幕时DialogFragment
不会干扰。目前的代码:
FragmentManager fm = fa.getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
// create dlg fragment
DialogFragment fragment = new DialogFragment();
// show the dialog.
fragment.show(fm, "android:switcher:888889:1"); // "android:switcher:888889:1" - existing fragment!
答案 0 :(得分:1)
我需要在“片段”中添加Dialog然后我可以滚动屏幕 和FragmentDialog不会干涉
普通DialogFragment
(或普通Dialog
)无法满足您的需求。你可以使用嵌套的Fragments
。更准确地说,您需要从Fragment
修改当前ViewPager
的视图,以使用RelativeLayout
或FrameLayout
包装当前布局以及添加其他容器(内容之上的FrameLayout
。
顶部的额外FrameLayout
将被用作Dialog
持有者(因此Dialog
将显示为浮动在普通内容之上)并且您将添加到此容器Fragment
代表Dialog
(正常Fragment
,而不是DialogFragment
)。然后,即使您的假ViewPager
显示,您也可以轻扫Dialog
。
另外,请注意,虽然屏幕上显示的是ViewPager
,但轻扫Dialog
可能会对用户造成直观反对。