覆層優先
先關閉作用中的覆層,再彈出頁面堆疊。
根節點感知
當堆疊長度為一時,改由父層行為處理,而不是強制彈出。
分頁感知
在分頁模式下,先在根節點切回第一個分頁,再觸發應用層級的結束處理。
返回作用域模式
頁面堆疊使用 DeclarativePagesBackScope,分頁根節點使用 tab 回呼。
返回策略
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 穩定性
請維持 所有返回事件的一致順序 ,以避免 Android 系統返回與 iOS 手勢之間的混淆。