Android Ouvrez BottomSheet DialogFragment en mode étendu par défaut.


Exemple

BottomSheet DialogFragment s'ouvre dans STATE_COLLAPSED par défaut. Qui peut être forcé d'ouvrir à STATE_EXPANDED et prendre l'écran complet du périphérique avec l'aide du modèle de code suivant.

@NonNull @Override Dialogue public onCreateDialog (Bundle savedInstanceState) {

    BottomSheetDialog dialog = (BottomSheetDialog) super.onCreateDialog(savedInstanceState);

    dialog.setOnShowListener(new DialogInterface.OnShowListener() {
        @Override
        public void onShow(DialogInterface dialog) {
            BottomSheetDialog d = (BottomSheetDialog) dialog;

            FrameLayout bottomSheet = (FrameLayout) d.findViewById(android.support.design.R.id.design_bottom_sheet);
            BottomSheetBehavior.from(bottomSheet).setState(BottomSheetBehavior.STATE_EXPANDED);
        }
    });

    // Do something with your dialog like setContentView() or whatever
    return dialog;
}

Bien que l'animation de dialogue soit légèrement perceptible, la tâche d'ouvrir le DialogFragment en plein écran est très bonne.