Skjábundin yfirlagstaða

Láttu dialoga og sheets koma fram sem OverlayRequest? og birta þau með ScreenOverlayHost eða AnimatedScreenOverlayHost.

Einn yfirlagsslottur

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, lokaðu pop-bendingum með canPopTop til að forðast ósamræmi í baksveipi á iOS.