Skjábundin yfirlagstaða

Mótaðu dialoga og sheets sem OverlayRequest? og birtu þau með ScreenOverlayHost eða AnimatedScreenOverlayHost.

Eitt yfirlagsslot

Mótaðu yfirlag sem OverlayRequest? og hreinsaðu það til að loka.

Stuðningur við dialoga og sheets

Notaðu DialogRequest og BottomSheetRequest með valkvæðum payload-gögnum.

Stýring á bakröð

Lokaðu fyrst yfirlagi og taktu síðan síður af stafla með back-scope widgets.

Mynstur fyrir yfirlagshýsil

Haltu yfirlagi í stöðu og byggðu yfirlagviðmót í gegnum overlayBuilder.

Regla um yfirlagstöðu

Hreyfður yfirlagshýsill

return AnimatedScreenOverlayHost(
  overlay: _overlay,
  onDismiss: _dismissOverlay,
  overlayBuilder: (context, req, dismiss) => switch (req) {
    DialogRequest(key: 'hello') => AlertDialog(
      title: const Text('Hello'),
      actions: [TextButton(onPressed: dismiss, child: const Text('Close'))],
    ),
    _ => null,
  },
  child: DeclarativePagesNavigator(
    pages: _pages,
    buildPage: _buildPage,
    onPopTop: _popTop,
    canPopTop: () => _overlay == null,
  ),
);
Mikilvægt

Þegar yfirlag er sýnilegt, hindraðu pop-bendingar með canPopTop til að forðast ósamræmi í baksveipi á iOS.