ສະແຕັກແຍກອິດສະຫຼະຕໍ່ແທັບ
DeclarativeTabsScaffold ຮັກສາລາຍຊື່ໜ້າຂອງແຕ່ລະແທັບໃຫ້ແຍກອອກຈາກກັນ ໃນຂະນະທີ່ຍັງຮັກສາການອັບເດດແບບປະກາດ.
ລາຍຊື່ໜ້າຂອງແຕ່ລະແທັບ
ຈັດການ Map<TabId, List<PageEntry>> ເພື່ອໃຫ້ສະຖານະນຳທາງຂອງແທັບຄາດເດົາໄດ້.
ອອຟເວີເລຍຕໍ່ໜ້າ
ໃຊ້ TabPageKey = (TabId, pageKey) ເພື່ອກຳນົດຂອບເຂດສະຖານະອອຟເວີເລຍຂອງແຕ່ລະໜ້າແທັບ.
ລຳດັບກັບຄືນທີ່ສອດຄ່ອງ
ອອຟເວີເລຍ -> pop tab stack -> first tab -> onBackAtRoot.
ຮູບແບບ Scaffold ຂອງແທັບ
ກະກຽມໜ້າຮາກສຳລັບແຕ່ລະແທັບ ແລະສົ່ງຕໍ່ເຫດການຂອງແທັບທັງໝົດຜ່ານການອັບເດດສະຖານະ.
ແຜນຜັງອອຟເວີເລຍຂອງແທັບ
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] ຕ້ອງບໍ່ເປົ່າ ເນື່ອງຈາກໜ້າຮາກຈຳເປັນສຳລັບພຶດຕິກຳນຳທາງທີ່ສະຖຽນ.
ກ່ອນໜ້າ
ອົງປະກອບແກ້ໄຂຕໍ່ໄປ
ອອຟເວີເລຍ