createDefaultTabBarWithPage static method
Widget
createDefaultTabBarWithPage({
- required int count,
- required String onTabText(
- int index
- required TabController tabController,
- required PageController pageController,
- required Widget pageBuilder(
- BuildContext context,
- int index
- TabBarIndicatorSize indicatorSize = TabBarIndicatorSize.tab,
- bool isScrollable = true,
Implementation
static Widget createDefaultTabBarWithPage({
required int count,
required String Function(int index) onTabText,
required TabController tabController,
required PageController pageController,
required Widget Function(BuildContext context, int index) pageBuilder,
TabBarIndicatorSize indicatorSize = TabBarIndicatorSize.tab,
bool isScrollable = true,
}) {
return Column(
children: [
createDefaultTabBar(
tabSize: count,
onTabText: onTabText,
onTap: (index) => pageController.jumpToPage(index),
controller: tabController,
indicatorSize: indicatorSize,
isScrollable: isScrollable,
),
Container(width: double.infinity, height: 8, color: Color(0xfff2f2f2)),
Expanded(
flex: 1,
child: PageView.builder(
allowImplicitScrolling: true,
controller: pageController,
itemCount: count,
itemBuilder: (context, index) => pageBuilder(context, index),
onPageChanged: (index) {
tabController.animateTo(index);
},
),
),
],
);
}