Android 使DialogFragment具有设备的全宽和全高

Android 使DialogFragment具有设备的全宽和全高,android,android-layout,android-xml,android-dialogfragment,Android,Android Layout,Android Xml,Android Dialogfragment,我正在尝试制作一个类似Facebook的对话框片段: 但是,我的对话框不会全屏显示: 这是我的DialogFragment课程: public class TestDialog extends DialogFragment { public TestDialog() { // Empty constructor required for DialogFragment } @Override public void onCreate(Bundl

我正在尝试制作一个类似Facebook的
对话框片段

但是,我的对话框不会全屏显示:

这是我的
DialogFragment
课程:

public class TestDialog extends DialogFragment {
    public TestDialog() {
        // Empty constructor required for DialogFragment
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setStyle(DialogFragment.STYLE_NO_TITLE, R.style.TestDialog);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.dialog_layout, container);
    }

    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
    }

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        Dialog dialog = super.onCreateDialog(savedInstanceState);
        dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        return dialog;
    }

    @Override
    public void onResume() {
        ViewGroup.LayoutParams params = getDialog().getWindow().getAttributes();
        params.width = WindowManager.LayoutParams.MATCH_PARENT;
        params.height = WindowManager.LayoutParams.MATCH_PARENT;
        getDialog().getWindow().setAttributes((android.view.WindowManager.LayoutParams) params);
        super.onResume();
    }
}
这是我的主题
TestDialog

<style name="TestDialog" parent="@android:style/Theme.Dialog">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowFullscreen">false</item>
    <item name="android:windowCloseOnTouchOutside">true</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
</style>

真的
真的
假的
真的
@android:style/Animation.Dialog
我试着将android:windowFullscreen设置为true,但没有帮助


如何将对话框扩展到设备的全宽和全高(减去状态栏)?

我以前见过类似的问题,也许这会有所帮助?这些解决方案似乎都不起作用。是什么让你认为你在Facebook的应用程序中看到的是一个对话框?为什么不应该呢?在我看来,这就像一个对话。它实际上可能是一个透明的活动;但是,您可能需要在对话框属性中覆盖默认页边距。