📜  颤振标签栏 - Dart (1)

📅  最后修改于: 2023-12-03 15:28:57.454000             🧑  作者: Mango

颤振标签栏 - Dart

颤振标签栏是一个基于 Dart 编程语言的开源项目,它提供了一个简单易用和高度可定制的标签栏组件。无论是移动端还是桌面端,颤振标签栏都能够快速地帮助你实现标签栏布局。

特点
  • 可定制性强:颤振标签栏提供了多种自定义选项和回调函数,方便你对标签栏进行各种样式和交互上的定制化。
  • 易用性佳:颤振标签栏提供了人性化的 API 接口,让你在使用过程中感受到更加流畅和自然的交互体验。
  • 跨平台支持:颤振标签栏能够同时适配移动端和桌面端,使你的项目能够在多种设备上达到统一的视觉效果。
  • 高度可扩展:颤振标签栏是一个开源项目,你可以轻松地在这个基础上编写自己的扩展和插件,满足你的不同业务需求。
使用方法
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(),
  ],
)
API 文档
TrembleTabs

| 参数 | 类型 | 必填 | 描述 | | -------------------- | ------------------------------------ | ---- | ------------------------------------------------------------ | | tabs | List<Tab> | 是 | 标签切换栏的 Tab 数组,每一个 Tab 包括 texticonbadge 三个参数 | | 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 许可证进行开源,任何人都可以自由使用和修改该项目的源代码。