Comment créer une boîte de dialogue d'alerte en plein écran sur Android?
Essayez le code ci-dessous
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this,Android.R.style.Theme_Black_NoTitleBar_Fullscreen);
vous devez créer un style personnalisé pour votre boîte de dialogue
dans votre style.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>
tout en gonflant votre dialogue définissez ce thème
dialog = new Dialog(this, R.style.DialogTheme);
si vous utilisez DialogFragment pour créer AlertDialog, vous pouvez définir MATCH_PARENT sur LayoutParams dans 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);
}
【Méthode 1 | Utiliser un style personnalisé】
Dans le fichier de styles:
<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>
Dans Java:
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), R.style.myFullscreenAlertDialogStyle); //second argument
【Méthode 2 | Utiliser le style intégré】
Dans Java:
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), Android.R.style.Theme_Material_Light_NoActionBar_Fullscreen);
dialog.getButton().setTextColor()
pour le changer.