Deterministikong pag-uugali sa pagbalik

Tukuyin ang iisang patakaran sa pagbalik upang laging mangyari sa parehong ayos ang pagsasara ng overlay at pag-pop ng stack.

Unahin ang overlay

Isara muna ang mga aktibong overlay bago i-pop ang mga page stack.

May kamalayan sa root

Kapag isa na lang ang laman ng stack, ipaubaya sa parent ang pag-uugali sa halip na sapilitang mag-pop.

May kamalayan sa tab

Sa tab mode, lumipat muna sa unang tab sa root bago simulan ang paghawak sa paglabas ng app.

Padron ng saklaw sa pagbalik

Gamitin ang DeclarativePagesBackScope para sa mga stack ng pahina at mga callback ng tab para sa mga root ng tab.

Patakaran sa pagbalik

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

Panatilihin ang isang pare-parehong ayos para sa lahat ng mga back event upang maiwasan ang kalituhan ng gumagamit sa pagitan ng Android system back at mga gesture sa iOS.