Comportament determinist la revenire
Definiți o singură politică de revenire astfel încât închiderea overlay-urilor și pop-urile din stivă să se întâmple mereu în aceeași ordine.
Overlay-uri primele
Închideți overlay-urile active înainte de a face pop la stivele de pagini.
Conștient de rădăcină
Când lungimea stivei este unu, delegați comportamentul părintelui în loc să forțați pop.
Conștient de taburi
În modul tab, mergeți la primul tab de la rădăcină înainte de a declanșa tratarea ieșirii la nivelul aplicației.
Modelul de gestionare a revenirii
Folosiți DeclarativePagesBackScope pentru stivele de pagini și callback-urile pentru taburi pentru rădăcinile taburilor.
Politică de revenire
DeclarativePagesBackScope
return DeclarativePagesBackScope(
pages: _pages,
popTopPage: _popTop,
isOverlayVisible: _overlay != null,
dismissOverlay: _dismissOverlay,
onBackAtRoot: _onBackAtRoot,
child: DeclarativePagesNavigator(
pages: _pages,
buildPage: _buildPage,
onPopTop: _popTop,
canPopTop: () => _overlay == null,
),
);
Stabilitate UX
Păstrați o ordine consecventă pentru toate evenimentele de revenire pentru a evita confuzia utilizatorului între butonul Înapoi al sistemului Android și gesturile iOS.
Anterior
Taburi declarativeUrmător
Anti-modele