Search packages, repositories and app categories

item_selector cover
Package detailsv0.2.0

item_selector

A generic item selector that works with ListView, GridView, Row, Column, or basically any parent widget that can have indexed child widgets.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
34
Likes
34
Pub points
140

Install package

flutter pub add item_selector

Package Overview

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

A flexible, generic item selector for Flutter that enables selection of items within any parent widget supporting indexed children, such as ListView, GridView, Row, or Column. It provides a consistent interface for managing selected items across different layout types without requiring custom logic for each. Ideal for building interactive lists and grids with selectable elements.

Use cases

  • Selecting items in a dynamic list
  • Building interactive grid layouts
  • Managing multiple selections in a scrollable container
  • Creating customizable selection interfaces
  • Integrating with forms or filters

Key features

  • Works with any indexed parent widget
  • Supports single and multiple selection
  • Generic type safety
  • Simple API for selection state management
  • Lightweight and unobtrusive

Suitable for

  • Developers building interactive lists
  • UI components requiring item selection
  • Apps with dynamic or nested layouts
  • Customizable form controls
  • Cross-platform apps needing consistent selection behavior

Considerations

  • Requires manual handling of selection state if not using built-in callbacks
  • May need additional styling for visual feedback
  • Not optimized for very large datasets without pagination
  • Limited to indexed child structures
  • No built-in animations for selection changes

Original README

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

Item Selector for Flutter

pub license: MIT build codecov

A generic Flutter item selector that works with ListView, GridView, Row, Column, or basically any parent widget that can have indexed child widgets. It supports single-selection by tap, and multi-selection by long-press and drag with auto-scrolling.

Preview

ListView GridView
ListView GridView
Column Custom
Column Custom

Usage

To use this package, add item_selector as a dependency in your pubspec.yaml file.

ItemSelectionController(
  child: ListView(
    children: List.generate(10, (int index) {
      return ItemSelectionBuilder(
        index: index,
        builder: (BuildContext context, int index, bool selected) {
          return Text('$index: $selected');
        },
      );
    }),
  ),
)

Thanks

Item Selector is based on Multi Select GridView in Flutter - by Simon Lightfoot.

Categories

Dependencies

Dependency list 1 items

  • interval_tree^0.3.0

Source repository

Projects using this package

No data available yet.