Android開発-DialogFragmentフルスクリーン表示の設定


デフォルトのDialogFragmentはフルスクリーンではありませんが、ダイアログボックスをフルスクリーン(コンテンツフルスクリーン)に設定する必要がある場合があります.Androidは直接APIを提供していません.他の異なる方法でフルスクリーンを設定すると、異なる機種で常に奇妙な問題があります.テストを経て、以下の方法で各機種のフルスクリーンを実現することができます.SDK Version=28のテスト
FragmentのonStart()を上書きする方法:
@Override
public void onStart() {
    super.onStart();
        Dialog dialog = getDialog();
        if (dialog != null) {
            Window window = dialog.getWindow();
            if (window != null) {
                int width = ViewGroup.LayoutParams.MATCH_PARENT;
                int height = ViewGroup.LayoutParams.MATCH_PARENT;
                window.setLayout(width, height);
            }
        }
    }
}

上記の方法ではDialogをフルスクリーンに設定することに成功したが、フルスクリーンのDialogの上部にViewがある場合、一部の機種ではViewがステータスバーに隠される(例えばサムスンS 9)場合、いくつかの特殊な設定で処理する必要がある.私の文章を参照してください:DialogFragmentがフルスクリーンでViewがステータスバーに隠されている問題を解決する
本文の元の住所、もし更に多くの疑問があるならば、私のその他のAndroid関連のブログを参考にしてください:私のブログの住所