Giter VIP home page Giter VIP logo

flutter_boom_menu's Introduction

Flutter Boom Menu

Usage

The BoomMenu widget is built to be placed in the Scaffold.floatingActionButton argument, replacing the FloatingActionButton widget. It's not possible to set its position with the Scaffold.floatingActionButtonLocation argument, but it's possible to set right/bottom margin with the marginRight and marginBottom arguments (default to 16) to place the button anywhere in the screen. Using the Scaffold.bottomNavigationBar the floating button will be always placed above the bar, so the BottomAppBar.hasNotch should be always false.

Title

Every child button can have a Icon,Title, SubTitle which can be customized providing by yourself. If the Title parameter is not provided the title will be not rendered.

The package will handle the animation by itself.

alt text

Example Usage ( complete with all params ):

Widget build(BuildContext context) {
    return Scaffold(
        floatingActionButton: BoomMenu(
      animatedIcon: AnimatedIcons.menu_close,
      animatedIconTheme: IconThemeData(size: 22.0),
      //child: Icon(Icons.add),
      onOpen: () => print('OPENING DIAL'),
      onClose: () => print('DIAL CLOSED'),
      scrollVisible: scrollVisible,
      overlayColor: Colors.black,
      overlayOpacity: 0.7,
      children: [
        MenuItem(
          child: Icon(Icons.accessibility, color: Colors.black),
          title: "Profiles",
          titleColor: Colors.white,
          subtitle: "You Can View the Noel Profile",
          subTitleColor: Colors.white,
          backgroundColor: Colors.deepOrange,
          onTap: () => print('FIRST CHILD'),
        ),
        MenuItem(
          child: Icon(Icons.brush, color: Colors.black),
          title: "Profiles",
          titleColor: Colors.white,
          subtitle: "You Can View the Noel Profile",
          subTitleColor: Colors.white,
          backgroundColor: Colors.green,
          onTap: () => print('SECOND CHILD'),
        ),
        MenuItem(
          child: Icon(Icons.keyboard_voice, color: Colors.black),
          title: "Profile",
          titleColor: Colors.white,
          subtitle: "You Can View the Noel Profile",
          subTitleColor: Colors.white,
          backgroundColor: Colors.blue,
          onTap: () => print('THIRD CHILD'),
        ),
        MenuItem(
          child: Icon(Icons.ac_unit, color: Colors.black),
          title: "Profiles",
          titleColor: Colors.white,
          subtitle: "You Can View the Noel Profile",
          subTitleColor: Colors.white,
          backgroundColor: Colors.blue,
          onTap: () => print('FOURTH CHILD'),
        )
      ],
    ),
    );
}

Issues & Feedback

Please file an issue to send feedback or report a bug. Thank you!

Contributing

Every pull request is welcome.

flutter_boom_menu's People

Contributors

mohanraj153 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

flutter_boom_menu's Issues

FAB Y-alignment not working

For the fabAlignment property, assigning a custom alignment with a non-zero y value does not move the button in the y-direction. I've tried to work around it by assigning a negative marginBottom, but this makes the button not pressable for some reason.

Very good but with z-order problem

Hi I try to use this lib but with a problem.
When I try to place this widget into my app and the menu is closed the overlay stay always on top. If I use it with a listview when the menu is closed and I try to scroll the listview the gesture is detected by menu and not by listview, this makes it unusable :(

Dynamic fab fade

Is it possible to get the standard fade effect? In fact we are using page viewer and the fab is displayed dynamically.
The fab is animated from the center to the bottom end right.

Below standard fab vs boom fab:

Standard fab fade effect:
fab

Current boom menu fade:
boom

Package, not plugin

It's a package, not a plugin (there are no platform native parts), Please, remove the unnecessary android and ios folders (apart from being unnecessary, they contain plugin example code completely irrelevant to this package). Besides, this setup makes Pub.dev erroneously report that only Android and iOS are supported while a package will run on every platform, eg. Web, too.

Documentation.

Animated close

Is there currently a way to make the overlay/menu fade out quickly on menu close?

overlayVisible bug

The property "overlayVisible" work inverted.
If I set overlayVisible = true the overlay is invisible :)

Tap outside to close not working correctly

Hey there, great package! Just a little bug though - if you tap above the menu options (while it is open), the menu does not get dismissed - unless you tap very far from the menu (near the top of the screen). It dismisses correctly if you tap near the bottom or sides of the menu.

Upgrade to Flutter 2 ?

Hello ๐Ÿ‘‹

First of all, thanks for sharing your project with the community !

I am using your package in my project, and we recently upgraded to Flutter2.
So I am facing warning with sound null safety with my BoomMenu.

Do you plan to port your package to Flutter 2 ?

Menu Items do not fit to the screen

I have 6 menu item and it is not fitting in my screen, even in a medium size phones, how can i fix it , Could i change the height of item ?

Margin/alignment for fab

Would be great if we could set margin/alignment for fab separately, not touching the menu items. I need my fab to be centered and leave menu items like before, but not possible as they are in the same column widget. Also overflow is possible because column height isn't managed by the widget tree.

doesn't work inside row and column

gives 'A RenderFlex overflowed by Infinity pixels on the bottom.' error when used inside column widget and gives 'A RenderFlex overflowed by Infinity pixels on the right.' error when used inside row widget.

Publishing on pub dev.

Your plugin is very cool, are you planning to publish it on pub.dev? Would be much more convenient and accessible for developers, thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.