FLUTTER ECOSYSTEM

benyaminbeyzaie/circular_bottom_navigation

순환형 하단 탐색은 원형 인디케이터와 멋진 애니메이션을 갖춘 플러터용 하단 탐색 라이브러리입니다。

circular_bottom_navigation 프로젝트 이미지
Stars
692
Forks
99
최근 푸시(UTC)
2024. 3. 18.
프로젝트 상태
활성
Benyamin Beyzaei GitHub avatar
GITHUB User

Benyamin Beyzaei ↗

Just a Geek

@MLSystemsCDTEdinburgh
언어DartObjective-CJava

기술 주제

이 저장소가 배포한 패키지

사용 중인 의존성

의존성 목록 3 개
  • flutter{"sdk":"flutter"}
  • flutter_lints개발 의존성^3.0.1
  • flutter_test개발 의존성{"sdk":"flutter"}

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

README 펼치기 / 접기

Circular Bottom Navigation (or maybe a tab bar).

Awesome Flutter

pub package APK

https://github.com/benyaminbeyzaie/circular_bottom_navigation/raw/master/repo_files/images/uplabs_demo.gif

This is implementation of an artwork in Uplabs

https://github.com/benyaminbeyzaie/circular_bottom_navigation/raw/master/repo_files/images/demo.gif

Let's get started

1 - Install and import

In your Dart code, you can use:
import 'package:circular_bottom_navigation/circular_bottom_navigation.dart';
import 'package:circular_bottom_navigation/tab_item.dart';

2 - CheatSheet

https://github.com/benyaminbeyzaie/circular_bottom_navigation/raw/master/repo_files/images/cheatsheet.png

3 - Use it like a charm

Make your TabItems
List<TabItem> tabItems = List.of([
    TabItem(Icons.home, "Home", Colors.blue, labelStyle: TextStyle(fontWeight: FontWeight.normal)),
    TabItem(Icons.search, "Search", Colors.orange, labelStyle: TextStyle(color: Colors.red, fontWeight: FontWeight.bold)),
    TabItem(Icons.layers, "Reports", Colors.red, circleStrokeColor: Colors.black),
    TabItem(Icons.notifications, "Notifications", Colors.cyan),
  ]);
Use this widget everywhere you want
CircularBottomNavigation(
      tabItems,
      selectedCallback: (int selectedPos) {
        print("clicked on $selectedPos");
      },
    )

CircularBottomNavigation supports RTL designs, If you wrap your widget in a Directionality widget and set the textDirection property you can customize the direction:

MaterialApp(
  title: 'Circular Bottom Navigation Demo',
  theme: ThemeData(
    primarySwatch: Colors.blue,
  ),
  home: Directionality(
    // use this property to change direction in whole app
    // CircularBottomNavigation will act accordingly
    textDirection: TextDirection.rtl,
    child: MyHomePage(title: 'circular_bottom_navigation'),
  ),
);
How to use CircularBottomNavigationController

With this controller you can read the current tab position, and set a tab position on widget (without needing to rebuild the tree) with the widget built in animation.

Just create a new instance of controller

CircularBottomNavigationController _navigationController =
new CircularBottomNavigationController(selectedPos);

Then pass it in your widget

CircularBottomNavigation(
      tabItems,
      controller: _navigationController,
    );

Now you can write (set new position with animation) and read value from it everywhere you want

// Write a new value
_navigationController.value = 0;

// Read the latest value
int latest = _navigationController.value;