liquid_orb_navbar 0.1.1
liquid_orb_navbar: ^0.1.1 copied to clipboard
A customizable liquid orb bottom navigation bar for Flutter.
liquid_orb_navbar #
A customizable liquid-style orb bottom navigation bar for Flutter.
Features #
- Curved liquid bar with center orb cutout
- Animated center orb glow/pulse
- Custom side tab icons and labels
- External state control using
currentIndex
Installation #
dependencies:
liquid_orb_navbar: ^0.1.1
Then run:
flutter pub get
Usage #
import 'package:flutter/material.dart';
import 'package:liquid_orb_navbar/liquid_orb_navbar.dart';
class DemoScreen extends StatefulWidget {
const DemoScreen({super.key});
@override
State<DemoScreen> createState() => _DemoScreenState();
}
class _DemoScreenState extends State<DemoScreen> {
int _index = 0;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Align(
alignment: Alignment.bottomCenter,
child: OrbBottomNavBar(
currentIndex: _index,
onItemTap: (int i) => setState(() => _index = i),
onCenterTap: () {},
centerIcon: const Icon(Icons.favorite_rounded),
centerSemanticsLabel: 'Create item',
items: const <OrbNavItem>[
OrbNavItem(icon: Icons.explore_rounded, label: 'Discover'),
OrbNavItem(icon: Icons.map_rounded, label: 'Map'),
OrbNavItem(icon: Icons.calendar_month_rounded, label: 'Calendar'),
OrbNavItem(icon: Icons.person_rounded, label: 'Profile'),
],
),
),
);
}
}
You can also fully customize side tab icons with iconBuilder:
OrbNavItem(
label: 'Map',
iconBuilder: (context, selected, color, size) {
return Icon(
selected ? Icons.map : Icons.map_outlined,
color: color,
size: size,
);
},
)
Notes:
- Provide either
iconoriconBuilderfor eachOrbNavItem. - Keep
currentIndexwithin item bounds.
Example #
Run the included example app:
cd example
flutter pub get
flutter run -t lib/main.dart
Publish to pub.flutter-io.cn #
- Update package metadata in
pubspec.yaml:homepagerepositoryissue_tracker
- Run checks:
flutter pub get
flutter analyze
flutter test
dart pub publish --dry-run
- Publish:
dart pub publish
License #
This package is licensed under the MIT License.