flutter_draggable_gridview 0.0.7 copy "flutter_draggable_gridview: ^0.0.7" to clipboard
flutter_draggable_gridview: ^0.0.7 copied to clipboard

This package helps you to add drag & drop functionality to exising Gridview.builder.

flutter_draggable_gridview #

flutter_draggable_gridview version flutter_draggable_gridview Git Stars MIT License

This package supports drag & drop widgets inside the GridView.builder for multiplatform. It provides all the properties which are available in Gridview.builder and easy to implement with the few lines of code.

Draggable GridView. #

Draggable GridView

Usage #

Example #

DraggableGridViewBuilder(
    gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
      crossAxisCount: 2,
      childAspectRatio: MediaQuery.of(context).size.width / (MediaQuery.of(context).size.height / 3),
    ),
    children: _listOfDraggableGridItem,
    isOnlyLongPress: false,
    dragCompletion: (List<DraggableGridItem> list, int beforeIndex, int afterIndex) {
      print( 'onDragAccept: $beforeIndex -> $afterIndex');
    },
    dragFeedback: (List<DraggableGridItem> list, int index) {
      return Container(
        child: list[index].child,
        width: 200,
        height: 150,
      );
    },
    dragPlaceHolder: (List<DraggableGridItem> list, int index) {
     return PlaceHolderWidget(
        child: Container(
        color: Colors.white,
      ),
    );
  },
  );

Required parameters #

gridDelegate:

A delegate that controls the layout of the children within the GridView.

children:

This property contains list of [DraggableGridItem] and it is use to show the widget inside the GridView.builder to provide the drag & drop functionality. Also, it contains isDraggable parameter which manages enable/disable the drag & drop functionality.

dragCompletion:

This callback provides updated list and old and new indexes.

Optional parameters #

isOnlyLongPress:

This property contains bool value. If this property is false then it works with simple press draggable or else it works with long press. default value is 'true'.

dragFeedback:

With this callback, you have to return a Widget and we will use this widget in feedback. Learn more about feedback from Draggable class.

dragPlaceHolder:

TWith this callback, you have to return a PlaceHolderWidget and we will use this widget in place holder.

dragChildWhenDragging:

With this callback, you have to return a Widget and we will display this widget instead of child when drags are under way. Learn more about childWhenDragging from Draggable class.

Last But Not Least 😍 #

You can use all the GridView.builder properties with DraggableGridViewBuilder class.

Note: #

The result returns in List. so it can be lost later, you are responsible for storing it somewhere permanent (if needed).

Guideline for contributors #

Contribution towards our repository is always welcome, we request contributors to create a pull request to the develop branch only.

Guideline to report an issue/feature request #

It would be great for us if the reporter can share the below things to understand the root cause of the issue.

  • Library version
  • Code snippet
  • Logs if applicable
  • Device specification like (Manufacturer, OS version, etc)
  • Screenshot/video with steps to reproduce the issue

LICENSE! #

Flutter Draggable GridView is MIT-licensed.

Let us know! #

We’d be really happy if you send us links to your projects where you use our component. Just send an email to sales@mindinventory.com And do let us know if you have any questions or suggestion regarding our work.

98
likes
0
pub points
94%
popularity

Publisher

verified publishermindinventory.com

This package helps you to add drag & drop functionality to exising Gridview.builder.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on flutter_draggable_gridview