Flutter manage push and pop for persistent bottom navigation bar - flutter

I'm using Custom Tab navigator to manage persistent bottom navigation bar across all the screens.
Due this Tab navigator sits in one StatefulWidget to host the tabs in the app, So unable to pop to the other widget out of these tabs and hosted widget.
Ex : After successful login, There is one widget Dashboard and it hosts the bottom navigation and tabs using Navigator. Now i want to logout from one of the tab and should navigate to the login screen, which is not part of any tabs or hosted widget.
While trying to push to Login widget, Showing only the blank screen. Because no route within the Custom navigator.
Any solution for this without using any package for persistent bottom navigation.

Related

How to Use ShellRoute with go_router and Nested Grandchildren

Flutter 3.3.10 & go_router 6.0.1
I have created a sample Flutter app for desktop that has a navigation bar on the left. I want my routes to navigate only to the right of the nav so the nav is persistent and never changes. Only the content in the "detail" pane of my app should change and navigate.
This works great when going between top-level pages or drilling down one level in the nav hierarchy:
But once you go from a child page to a grandchild page, the views animate over the top of the nav, which would suggest it's ignoring the ShellRoute established at the top of the navigation tree.
Here's my sample app: https://gist.github.com/cliftonlabrum/802f974be057306ca9205ccc6638e438
How do I force my grandchild views to respect the ShellRoute and only navigate/animate inside the detail portion of my UI?

Implementing custom bottom tab navigator flutter

I am trying to implement a custom bottom tab navigator by doing step by step from this source: https://medium.com/coding-with-flutter/flutter-bottomappbar-navigation-with-fab-8b962bb55013. It uses the combination of floating action bottom and BottomAppBar. The problem is.. if I click the floating action button to navigate user to a screen the bottom tab navigator will be lost. Is there a way to keep bottom tab navigator is still exist when user click the floating action button (where the button will navigate to a screen) or is there a way to make custom bottom tab navigator like this without floting action button:
you have to use nested navigation. here is a tutorial.

Flutter: Unable to go to login view from a persistent bottom nav bar based view

I have a persistent bottom nav bar based on this plugin.
The plugin allows building a page with few footer buttons and navigation etc. But, Once such a page has a logout button that must send the user back to Login view (outside of navbar) and I am stuck here. I've permuted with all the navigator operations available and am stuck here, unable to show a page without the bottom navbar appearing.
Any help is much appreciated! :)

Flutter TabController - push screens inside of any particular tabitem

I have a TabController in flutter which has 4 TabItems. How to push screens inside on any particular tab item with back navigation? instead of opening a new screen which covers the full screen and hides the Tab bar.
Finally after some research, i have achieved this with Cupertino Widgets. Using CupertinoTabScaffold and CupertinoTabBar this can be done.

Make multiple scaffold with single Tabs bar

I am building a flutter app where the user requirement is to build 3 tabs with each tab having custom AppBar which implies to have multiple Scaffolds in each view.
So I have main.dart, screen.dart, account.dart and post.dart
3 tabs => Screen, Account and Post
Screen View => Appbar with just name
Account View => Appbar with Hamburger Icon
Post View => Appbar with Plus icon
According to flutter we can have Appbar and Bottom Navigation Bar (Tabs Bar) inside Scaffold Widget. So to have multiple Scaffolds, I would have to make 3 seperate bottom navigation bar or is there any other way to achieve this functionality?
Also, if we need to make 3 different Bottom Navigation Bar per Scaffold, then how to navigate between them since my first view will be called from main.dart
Thanks for helping and taking out your time to answer the question.