Как сделать диалог Alert в полноэкранном режиме на Android?

Как сделать диалог оповещений в полноэкранном режиме на Android?

Ответ 1

Попробуйте ниже код

AlertDialog.Builder alertDialog = new AlertDialog.Builder(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen);

Ответ 2

вы должны создать собственный стиль для своего диалога

в вашем стиле.xml

 <style name="DialogTheme" parent="android:Theme.Dialog">

    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>   
    <!-- No backgrounds, titles or window float -->
    <item name="android:windowBackground">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
</style>

при раздувании вашего диалога задайте эту тему

dialog = new Dialog(this, R.style.DialogTheme);

Ответ 3

если вы используете DialogFragment для создания AlertDialog, вы можете установить MATCH_PARENT в LayoutParams в onResume():

@Override
public void onResume() {
    super.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);
}

Ответ 4

【Способ 1 | Использовать пользовательский стиль】

В файле стилей:

<style name="myFullscreenAlertDialogStyle" parent="Theme.AppCompat.Light.NoActionBar">      //no actionbar, but status bar exists
    <item name="android:windowFullscreen">true</item>                       //remove status bar
    <item name="colorAccent">@color/colorAccent</item>                      //change button text color
</style>

В файле Java:

AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), R.style.myFullscreenAlertDialogStyle);   //second argument

【Метод 2 | Используйте встроенный стиль】

В файле Java:

AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), android.R.style.Theme_Material_Light_NoActionBar_Fullscreen);
  • Этот метод сделает текст кнопки зеленым, вы можете использовать dialog.getButton().setTextColor() для его изменения.