Ekrānam lokāls pārklājuma stāvoklis
Attēlojiet dialogus un loksnes ar OverlayRequest? un renderējiet tos caur ScreenOverlayHost vai AnimatedScreenOverlayHost.
Viena pārklājuma vieta
Modelējiet pārklājumu kā OverlayRequest? un notīriet to, lai aizvērtu.
Dialogu un lokšņu atbalsts
Izmantojiet DialogRequest un BottomSheetRequest ar izvēles payload datiem.
Atpakaļ secības kontrole
Vispirms aizveriet pārklājumu, pēc tam izņemiet lapas, izmantojot back-scope logrīkus.
Pārklājuma host paraugs
Glabājiet pārklājumu stāvoklī un veidojiet pārklājuma UI caur overlayBuilder.
Pārklājuma stāvokļa noteikums
Animēts pārklājuma hosts
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,
),
);
Svarīgi
Kad pārklājums ir redzams, bloķējiet pop žestus ar canPopTop lai iOS izvairītos no neatbilstīgas atpakaļ vilkšanas uzvedības.
Iepriekš
Lapas un atrisinātājsTālāk
Deklaratīvās cilnes