sliding_panel 0.5.0+2

  • Readme
  • Changelog
  • Example
  • Installing
  • 87

sliding_panel #

A Flutter slidable widget that provides an easy to use configuration. Just as you want it!


Make choicesCustomize itGet full control

Easily put your content in the panel, customize it and then just use the panel for various purposes like, #

  • Showing some persistent content on bottom of the screen.
  • Can be used like showModalBottomSheet() from Flutter to make user choices.
  • Also use like DraggableScrollableSheet() and put scrollable content inside the panel.

👉 How to use sliding_panel: #

Please visit the Wiki to see how you can get this working.

Note: #

This package was much unstable before. But now, it is a bit more stable. Still if you find bugs, open an Issue :)

A note for v0.2.0 and v0.1.0 users 😟

This version contains a LOADS of breaking 💥 changes, which means that simply updating the package won't give you all the bells and whistles of new version. 😔 For updating guide, please go to the Migration guide, and see the 'Migration Guide'.

  • After following this guide, you will enjoy new features.

Please ignore the warning if you get: "This package doesn't depend on collection." #

[0.5.0+2] - October 06, 2019

A minor update, that fixes bug in

[0.5.0+1] - October 06, 2019

A minor update, that fixes bug in

[0.5.0] - October 06, 2019

This package release introduces some API changes (majorly breaking changes) and a new underlying mechanism. Below are some of the changes. For complete list of changes and migration to this version, visit the Migration guide.

  • New: Now specify what happens when user presses back button, using BackPressBehavior and PanelPoppingBehavior.
  • New: Now you can specify the limit of user's dragging the panel, using allowedDraggingTill parameter.
  • New: Now you can provide Scrollable element inside panelContent, so that the panel can be dragged and scrolled at the same time.
  • New: snappingTriggerPercentage added, so that you have more control over panel snapping.
  • New: A new class PanelSizeData is added (accessed from PanelController), which helps to get updated PanelSize parameters of this panel.
  • When using PanelAutoSizing, you can not change values of PanelSize at runtime.
  • PanelController also contains some new and breaking changes.
  • onPanelExpanded, onPanelCollapsed and onPanelClosed are all combined in single : onPanelStateChanged.
  • Breaking change: The headerContent is now moved to a separate Widget called PanelHeaderWidget.
  • Breaking change: For panelContent, a new typedef is introduced, called PanelBodyBuilder.
  • Breaking change: PanelSize class no longer accepts values in pixels. Only percentage values can be given from now.
  • New and Breaking change: The PanelState : animating works in adifferent way and a new state indefinite added.

[0.2.0] - September 13, 2019

Now, the package is updated with some improvements as below:

  • The code is separated in multiple files for readability.
  • Almost all the functions of PanelController return a Future, so that you can do some action afterwards.
  • When a panel is visible, you can change the panel's height runtime and it will animate. (This feature is not stable).
  • Now you can provide the height of the panel in percentage of the screen also.
  • A persistent header widget can be provided.
  • The panel's height can be automatically determined depending on content! (see PanelAutoSizing class for this).

[0.1.0] - September 07, 2019

The initial release of the sliding_panel package. This includes below functions to the developers:

  • A highly customisable Sliding panel
  • Though many options available, it is made as easy as possible to tweak look and feel of the panel
  • A panel can work as Three-state panel or traditional Two-state panel
  • An easy to use PanelController, which helps getting current panel state and modifying its current state
  • PanelController allows to animate the panel to arbitrary position
  • Various callbacks that help getting current state of the panel
  • Parallax and Backdrop effects on the panel
  • Provide InitialPanelState property to decide how the panel is displayed initially
  • Also responds to user gestures
  • Panel can return arbitrary values back to the parent


example #

Example of sliding_panel

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  sliding_panel: ^0.5.0+2

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:sliding_panel/sliding_panel.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on Oct 22, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.5.1
  • pana: 0.12.21
  • Flutter: 1.9.1+hotfix.4


Detected platforms: Flutter

References Flutter, and has no conflicting libraries.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.7
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies