Deterministinis grįžimo elgesys

Apibrėžkite vieną grįžimo politiką, kad perdangų uždarymas ir puslapių išėmimas iš steko visada vyktų ta pačia tvarka.

Pirmiausia perdangos

Uždarykite aktyvias perdangas prieš išimdami puslapius iš steko.

Šaknį atpažįstantis

Kai steko ilgis yra vienas, perduokite valdymą tėviniam elgesiui, o ne priverstinai pašalinkite viršutinį elementą.

Skirtukus atpažįstantis

Skirtukų režimu, prieš aktyvuodami programos lygio išėjimo apdorojimą šaknyje, pereikite į pirmąjį skirtuką.

Grįžimo srities šablonas

Naudokite `DeclarativePagesBackScope` puslapių stekams ir skirtukų atgalinius iškvietimus (callbacks) skirtukų šaknims.

Grįžimo politika

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,
  ),
);
UX stabilumas

Laikykitės vienos nuoseklios tvarkos visiems grįžimo įvykiams kad išvengtumėte naudotojų painiavos tarp Android sistemos grįžimo ir iOS gestų.