Flutter - Custom Shaped Bottom Navigation Bar (From Scratch) | Flutter UI Design Tutorial

RetroPortal Studio · 96K views · 2020 · 12:40

Open on YouTube

UX & UI designSoftware (other)tutorial

Why Stack Overflow recommends it

Stack Overflow users link it when asked how to build curved or custom shaped bottom navigation bars in Flutter, since it walks through CustomPainter step by step.

Recommended by 3 people across 3 different months, 2020 to 2024.

What it is

A Flutter UI tutorial from RetroPortal Studio that builds a custom shaped bottom navigation bar from scratch using the CustomPaint widget and path curves. It aims to teach an approach to drawing shapes and aligning elements with minimal code.

What people said

Recommends Midhun MP · 2020-12 · Stack Overflow · on “Custom Bottom Navigation flutter”

You can do that using CustomPainter. Watch this tutorial which exactly creates that bottom navigation bar: [this video]

Recommends bin k · 2021-02 · Stack Overflow · on “How to draw path along circle in Flutter?”

you have to use conicTo function like this : final path = Path() ..moveTo(x, y) ..conicTo(double x1, double y1, double x2, double y2, double w); from doc : Adds a bezier segment that curves from the current point to the given point (x2,y2), using the control points (x1,y1) and the weight w. If the weight is greater than 1, then the curve is a hyperbola; if the weight equals 1, it's a parabola; and if it is less than 1, it is an ellipse. OR use quadraticBezierTo function quadraticBezierTo(double x1, double y1, double x2, double y2) this link is useful to understand quadraticBezierTo [this video]

Recommends Dev Man · 2024-04 · Stack Overflow · on “how to make curved from the top Flutter bottom navigation bar”

You can use the CustomPaint [LINK] widget, with it you can build any shape that you want in Flutter This video can help you to design and implement a custom shape for the bottom navigation bar. Link: Flutter - Custom Shaped Bottom Navigation Bar [this video]

Cites Shubham Narkhede · 2020-12 · Stack Overflow · on “Custom Bottom Navigation flutter”

[LINK] This code will be help you. [this video] import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, title: 'Bottom Nav Bar V2', theme: ThemeData( primarySwatch: Colors.blue, visualDensity: VisualDensity.adaptivePlatformDensity, ), home: BottomNavBarV2(), ); } } class BottomNavBarV2 extends StatefulWidget { @override _BottomNavBarV2State createState() => _BottomNavBarV2State(); } class _BottomNavBarV2State extends State<BottomNavBarV2> { int currentIndex = 0; setBottomBarIndex(index) { setSta

Cites Pratt · 2021-06 · Stack Overflow · on “Unable to keep the bottom navbar while moving to other pages flutter”

I'm a beginner, I tried this tutorial [this video] But when I press the other buttons and it navigates to another screen.. the bottom bar is disappearing. how to make it stick? I'm getting 'bottom overflowed with infinite pixels ' in place of the bottom navbar. #main.dart class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Splashscreen(), routes: <String, WidgetBuilder>{ "/login": (BuildContext context) => LoginSignupScreen(), "/profile": (BuildContext context) => Profile(), "/home": (BuildContext context) => Home(), "/splashscreen": (BuildContext context) => Splashscreen(), "/department": (BuildContext

Cites Ali Bakhtiyari · 2022-05 · Stack Overflow · on “How to make really Custom BottomNavigationBar”

You can use the CustomPaint widget and CustomPainter class , to draw exactly what you need. You can draw a customized path, in your case, using the path.LineTo and path.arcToPoint functions. Then use stack to put your IconButtons where ever you want . This video [this video] explains how you can use custom paint. Update I added a sample code, you can edit the numbers and achieve what you need. This code will give you the orange widget on this image: [LINK] class CustomBottomNav extends StatelessWidget { const CustomBottomNav({Key? key}) : super(key: key); @override Widget build(BuildContext context) { var size = MediaQuery.of(context).size; return Stack( children: [ CustomPaint( size: Size(size.w

Cites Harish · 2022-05 · Stack Overflow · on “How to customize a bottom navigation bar in flutter with floating action button and and also curve design to the left and right?”

import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, title: 'Bottom Nav Bar V2', theme: ThemeData( primarySwatch: Colors.blue, visualDensity: VisualDensity.adaptivePlatformDensity, ), home: BottomNavBarV2(), ); } } class BottomNavBarV2 extends StatefulWidget { @override _BottomNavBarV2State createState() => _BottomNavBarV2State(); } class _BottomNavBarV2State extends State<BottomNavBarV2> { int currentIndex = 0; setBottomBarIndex(index) { setState(() { currentIndex = index; }); } @overri

Cites kajunkenny · 2023-04 · Stack Overflow · on “custom bottomNavigationBar help need in flutter to call pages into view”

I have a working page of code that I wanted to modify for my portfolio. I used this YouTube [this video] and git [LINK] to make my design, but now I can't get my pages to call in. working Code I used... circular_bottom_navigation: ^2.3.0 class MainScreenScaffold extends StatefulWidget { const MainScreenScaffold({Key? key}) : super(key: key); @override State<MainScreenScaffold> createState() => _MainScreenScaffoldState(); } bool value = false; class _MainScreenScaffoldState extends State<MainScreenScaffold> { late List<Map<String, Object>> _pages; int _selectedPageIndex = 2; @override void initState() { _pages = [ { 'page': Abilities(), }, { 'page': Education(), }, { 'page': HomePage(), }, { 'page