selectpicker 2.0.3 copy "selectpicker: ^2.0.3" to clipboard
selectpicker: ^2.0.3 copied to clipboard

A modern, generic, and highly customizable Select Picker for Flutter. Supports generic types, custom builders, asynchronous search and more.

Select Picker #

A modern, generic, and highly customizable Select Picker for Flutter. Supports generic types, custom builders, asynchronous search, and validation with a premium look and feel.

Features #

  • Generic Support: Works with any data type T.
  • Modern UI: Rounded bottom sheets, drag handles, and smooth animations.
  • Asynchronous Search: Support for remote data searching with debouncing.
  • Custom Builders: Fully customize how items look in the list.
  • Validation: Built-in support for errorText.
  • Backward Compatibility: Maintains support for legacy SelectPicker.

Images #

Start All Filter Select

Getting started #

Add the package to your pubspec.yaml:

dependencies:
  selectpicker: ^2.0.2

Import the package:

import 'package:selectpicker/selectpicker.dart';

Basic Usage (Modern API) #

The new SelectPickerNew is the recommended way to use the library.

SelectPickerNew<String>(
  items: ['Apple', 'Banana', 'Cherry'],
  hint: "Select a fruit",
  onChanged: (value) {
    print("Selected: $value");
  },
)

Advanced Usage (Generic Objects) #

You can use complex objects by providing a titleBuilder.

SelectPickerNew<User>(
  items: userList,
  hint: "Select a user",
  titleBuilder: (user) => user.name,
  onChanged: (user) {
    setState(() => _selectedUser = user);
  },
  decoration: InputDecoration(
    border: OutlineInputBorder(borderRadius: BorderRadius.circular(12)),
    prefixIcon: Icon(Icons.person),
  ),
  errorText: _hasError ? "Field is required" : null,
)
SelectPickerNew<City>(
  onSearch: (query) async {
    return await api.fetchCities(query);
  },
  hint: "Search for a city",
  titleBuilder: (city) => city.name,
  onChanged: (city) => print(city?.name),
)

Example #

Check out the full example in the example directory.

Legacy Usage #

For those still using the previous version, SelectPicker remains available for backward compatibility but is marked as deprecated.

SelectPicker(
  hint: "Select an item",
  list: [
    SelectPickerItem("Item 1", "1", null),
    SelectPickerItem("Item 2", "2", null),
  ],
  selectFirst: true,
  onSelect: (value) => print(value.title),
)

Credits #

6
likes
150
points
68
downloads

Publisher

unverified uploader

Weekly Downloads

A modern, generic, and highly customizable Select Picker for Flutter. Supports generic types, custom builders, asynchronous search and more.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, provider

More

Packages that depend on selectpicker