Deterministinen takaisin-käyttäytyminen

Määritä yksi takaisin-käytäntö, jotta overlayn sulkeminen ja pinosta poistuminen tapahtuvat aina samassa järjestyksessä.

Overlay ensin

Sulje aktiiviset overlayt ennen sivupinojen purkamista.

Juuritietoinen

Kun pinon koko on yksi, delegoi käsittely vanhemmalle tasolle pakotetun poiston sijaan.

Välilehtitietoinen

Välilehtitilassa siirry juuritasolla ensin ensimmäiselle välilehdelle ennen sovellustason poistumiskäsittelyä.

Takaisin-scope-malli

Käytä DeclarativePagesBackScopea sivupinoille ja välilehtien takaisinkutsuja niiden juurissa.

Takaisin-käytäntö

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:n vakaus

Säilytä yksi johdonmukainen järjestys kaikille takaisin-tapahtumille yksi johdonmukainen järjestys kaikille takaisin-tapahtumille, jotta käyttäjät eivät sekoita Androidin järjestelmän takaisin-painiketta ja iOS-eleitä.