Search packages, repositories and app categories

flutter_expanded_tile cover
Package detailsv0.4.0

flutter_expanded_tile

An Expansion tile similar to the list tile supports leading widget,and programatic control with content expansion animation.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
14.5K
Likes
77
Pub points
150

Install package

flutter pub add flutter_expanded_tile

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

flutter_expanded_tile is a customizable expansion tile widget for Flutter that mimics the behavior of a standard list tile while supporting a leading widget and smooth programmatic content expansion with animation. It enhances user interface design by enabling collapsible sections within lists, ideal for organizing content in a clean, interactive manner. The package is compatible across all major platforms, including mobile, web, and desktop, ensuring consistent behavior. It provides developers with fine-grained control over expansion states and transitions.

Use cases

  • Creating collapsible settings panels
  • Building FAQ sections in apps
  • Organizing detailed information in lists
  • Designing dynamic form sections
  • Implementing expandable product details

Key features

  • Supports leading widgets
  • Programmatic expansion control
  • Smooth animation during expansion
  • Cross-platform compatibility
  • Customizable appearance
  • Intuitive API for state management

Suitable for

  • Developers building interactive lists
  • UI designers needing expandable content
  • Apps requiring collapsible navigation or settings
  • Projects with cross-platform deployment needs
  • Teams prioritizing smooth animations

Considerations

  • Requires careful handling of state in complex layouts
  • May impact performance with large numbers of tiles
  • Limited to vertical expansion only
  • Not suitable for non-list container use cases
  • Depends on Flutter's animation framework for smoothness

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

flutter_expanded_tile

An Expansion tile similar to the list tile supports leading widget,and programatic control with content expansion animation.

Getting Started

1. Depend on it

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

dependencies:
  flutter_expanded_tile: [latest version]
2. Install it
$ flutter pub get
3. Import it
import 'package:flutter_expanded_tile/flutter_expanded_tile.dart';

Example

See Example page for example code.

ToDo list

[x] Adding Null Safety. [x] Adding Tap Callbacks. [x] Adding Listview widget with available controller for certain index. [x] Adding new separated constructor to the ExpandedTileList widget. [x] Adding border data to the tile with a full tile border feature.

Contributing

Contributing is more than welcomed on any of my packages/plugins. I will try to keep adding suggested features as i go.

Versioning

  • V0.4.0 - Refactored/Updated some code + Resolved some issues + Added 'initialinitiallyOpenedControllersIndexes' Property to the ListTile + Added footer widget to the tile.
  • V0.3.7 - Resolved some issues + Added 'disableAnimation' Property to the Tile.
  • V0.3.6 - Added 'Enabled' Property to the Tile.
  • V0.3.5 - Added ExpandedTileList.separated constructor to the ExpandedTileList widget.
  • V0.3.4 - Added ExpandedTileList widget.
  • V0.3.3 - Added Documentations and refactored code.
  • V0.3.2 - Added initial expansion state to the controller and Tap callbacks to the widget.
  • V0.3.0 - Added Null Safety, Changed some customization properties, Removed checkbox trailing widget as it is possible to implement with a widget,and fixed some bugs.
  • V0.2.1 - Added onChecked callback.
  • V0.2.0 - Added controller for programatic expansion and checkbox functionality.
  • V0.1.0 - Initial Release.

Authors

Michael Aziz (Micazi) - Github

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Categories

Source repository

Projects using this package

No data available yet.