📅  最后修改于: 2023-12-03 15:28:57.454000             🧑  作者: Mango
颤振标签栏是一个基于 Dart 编程语言的开源项目,它提供了一个简单易用和高度可定制的标签栏组件。无论是移动端还是桌面端,颤振标签栏都能够快速地帮助你实现标签栏布局。
import 'package:tremble_tabs/tremble_tabs.dart';
...
TrembleTabs(
tabs: [
Tab(
text: 'Home',
),
Tab(
text: 'Profile',
),
],
tabBarBackgroundColor: Colors.white,
tabBarStyle: TrembleTabsStyle.material,
onPageChanged: (index) {
print('current active tab: $index');
},
children: [
Home(),
Profile(),
],
)
TrembleTabs
| 参数 | 类型 | 必填 | 描述 |
| -------------------- | ------------------------------------ | ---- | ------------------------------------------------------------ |
| tabs
| List<Tab>
| 是 | 标签切换栏的 Tab 数组,每一个 Tab 包括 text
、icon
和 badge
三个参数 |
| children
| List<Widget>
| 是 | Tab 对应页面的数组 |
| onPageChanged
| ValueChanged<int>
| 否 | 切换 Tab 后的回调函数 |
| initialIndex
| int
| 否 | 初始化时默认选中的 Tab 索引,默认为 0 |
| tabBarBackgroundColor
| Color
| 否 | 标签栏背景色 |
| indicatorColor
| Color
| 否 | 标签栏指示器的颜色,如不设置则使用系统默认值 |
| indicatorPadding
| EdgeInsetsGeometry
| 否 | 标签栏指示器与 Tab 文本之间的空白区域 |
| tabBarStyle
| TrembleTabsStyle
| 否 | 标签栏的样式,默认为 TrembleTabsStyle.material
|
| lazyLoad
| bool
| 否 | 是否开启懒加载 |
| swipeable
| bool
| 否 | 是否支持左右切换,如不设置或为 null 则使用系统默认值 |
Tab
| 参数 | 类型 | 必填 | 描述 |
| -------- | --------- | ---- | ------------------ |
| text
| String
| 否 | Tab 显示的文本 |
| icon
| Icon
| 否 | Tab 显示的图标 |
| badge
| String
| 否 | Tab 右上角显示的角标 |
TrembleTabsStyle
| 值 | 描述 |
| --------------------------- | ---------------------------------------------------------- |
| TrembleTabsStyle.material
| 标准的 Material Design 风格 |
| TrembleTabsStyle.cupertino
| iOS 风格,适用于 Cupertino 应用程序(移动端) |
| TrembleTabsStyle.oneUI
| 仿照 Samsung One UI 风格,适用于三星用户(移动端) |
颤振标签栏基于 MIT 许可证进行开源,任何人都可以自由使用和修改该项目的源代码。