Ekranga xos overlay holati
Dialoglar va sheetlarni OverlayRequest? bilan ifodalang va ularni ScreenOverlayHost yoki AnimatedScreenOverlayHost orqali render qiling.
Bitta overlay sloti
Overlayni OverlayRequest? sifatida modellashtiring va yopish uchun uni tozalang.
Dialog va sheet qo'llovi
Ixtiyoriy payload ma'lumotlari bilan DialogRequest va BottomSheetRequest dan foydalaning.
Orqaga tartibini boshqarish
Back-scope widgetlar orqali avval overlayni yoping, keyin sahifalarni pop qiling.
Overlay host namunasi
Overlayni holatda saqlang va overlayBuilder orqali overlay UI ni quring.
Overlay holati qoidasi
Animatsiyali Overlay Host
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,
),
);
Muhim
Overlay ko'rinib turganda, canPopTop bilan pop gesturelarni bloklang iOS dagi back-swipe nomuvofiqligini oldini olish uchun.
Oldingi
Sahifalar va ResolverKeyingi
Deklarativ tablar