प्रत्येक ट्याबका लागि स्वतन्त्र stack हरू

DeclarativeTabsScaffold ले प्रत्येक ट्याबको page list लाई स्वतन्त्र राख्छ र घोषणात्मक अद्यावधिकहरू जोगाइराख्छ।

ट्याब-स्थानीय पृष्ठ सूचीहरू

पूर्वानुमान गर्न मिल्ने ट्याब navigation state का लागि Map<TabId, List<PageEntry>> व्यवस्थापन गर्नुहोस्।

प्रति-स्क्रिन ओभरलेहरू

प्रत्येक ट्याब screen का लागि overlay state को दायरा निर्धारण गर्न TabPageKey = (TabId, pageKey) प्रयोग गर्नुहोस्।

सुसंगत back क्रम

ओभरले -> ट्याब stack pop गर्नुहोस् -> पहिलो ट्याब -> onBackAtRoot.

ट्याब Scaffold ढाँचा

प्रत्येक ट्याबका लागि root page हरू तयार गर्नुहोस् र सबै ट्याब events लाई state updates मार्फत मार्गित गर्नुहोस्।

ट्याब ओभरले म्याप

DeclarativeTabsScaffold

const tabHome = TabId('home');
const tabSettings = TabId('settings');

final pagesByTab = <TabId, List<PageEntry>>{
  tabHome: [const PageEntry(key: 'home', name: '/home')],
  tabSettings: [const PageEntry(key: 'settings', name: '/settings')],
};

return DeclarativeTabsScaffold(
  items: items,
  currentTab: currentTab,
  onSelectTab: _selectTab,
  pagesByTab: pagesByTab,
  setPagesForTab: _setPagesForTab,
  buildPage: _buildTabPage,
);
अवरोध

प्रत्येक ट्याबका लागि, pagesByTab[tab] खाली रहनु हुँदैन किनकि स्थिर navigation व्यवहारका लागि root page आवश्यक हुन्छ।

अघिल्लो

Resolver