Code: Select all
public static BottomSheetDialog ShowBottomSheet(this Page page, IView bottomSheetContent)
{
var bottomSheetDialog = new BottomSheetDialog(Platform.CurrentActivity?.Window?.DecorView.FindViewById(Android.Resource.Id.Content)?.Context ?? throw new InvalidOperationException("Context is null"));
bottomSheetDialog.SetContentView(bottomSheetContent.ToPlatform(page.Handler?.MauiContext ?? throw new Exception("MauiContext is null")));
bottomSheetDialog.Window?.ClearFlags(WindowManagerFlags.NotTouchable);
bottomSheetDialog.Window?.ClearFlags(WindowManagerFlags.DimBehind);
bottomSheetDialog.Window?.ClearFlags(WindowManagerFlags.NotFocusable);
bottomSheetDialog.Window?.AddFlags(WindowManagerFlags.SplitTouch);
bottomSheetDialog.Behavior.FitToContents = true;
bottomSheetDialog.Behavior.Draggable = true;
bottomSheetDialog.Behavior.SkipCollapsed = true;
bottomSheetDialog.SetCanceledOnTouchOutside(false);
bottomSheetDialog.Show();
return bottomSheetDialog;
}
Ich habe versucht, die Verhaltenseigenschaften wie FitToContents, Draggable und SkipCollapsed usw. anzupassen, aber es ist mir nicht gelungen, es nicht-modal zu machen.
Jede Hilfe oder Anleitung, wie dieser Code geändert werden kann, um ein nicht-modales unteres Blatt zu erstellen, wäre sehr dankbar.
Vielen Dank im Voraus!
Mobile version