Buscar pacotes, repositórios e categorias de apps

Capa de flutter_date_range_picker
Detalhes do pacotev0.3.0

flutter_date_range_picker

Pacote Flutter para seleção de intervalos de datas com opções de entrada, diálogo e calendário.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
5,3 mil
Curtidas
66
Pontos Pub
160

Instalar pacote

flutter pub add flutter_date_range_picker

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Um pacote Flutter que permite aos usuários selecionar intervalos de datas por meio de várias interfaces, incluindo campos de entrada, diálogos e calendários interativos. Ele suporta todas as principais plataformas — Android, iOS, Web, macOS, Windows e Linux — tornando-o ideal para aplicativos multiplataforma que exigem seleção flexível de intervalos de datas. O pacote oferece uma interface limpa e personalizável com validação integrada e navegação intuitiva entre datas. Integra-se perfeitamente em formulários e fluxos de trabalho onde intervalos de tempo são essenciais.

Casos de uso

  • Entradas de formulário que exigem intervalos de data
  • Sistemas de reserva ou agendamento
  • Filtragem de dados por intervalos de data
  • Aplicativos de planejamento de eventos
  • Ferramentas de relatórios com seleção de intervalo de datas
  • Painéis baseados em calendário

Principais recursos

  • Modos de seleção múltipla (entrada, diálogo, calendário)
  • Compatibilidade multiplataforma
  • UI e estilização personalizáveis
  • Validação de data embutida
  • Suporte para intervalos de data únicos e múltiplos
  • Integração fácil com formulários existentes do Flutter

Indicado para

  • Desenvolvedores de aplicativos multiplataforma
  • Aplicações que precisam de filtros de intervalo de datas
  • formulários com foco em interface com entradas de data
  • Plataformas de agendamento e reserva
  • Ferramentas que exigem seleção de intervalo de tempo

Considerações

  • Requer manipulação cuidadosa da formatação de data
  • Pode ser necessário configurar localização adicional
  • Estilos personalizados podem exigir compreensão profunda da composição de widgets
  • Limitado à seleção apenas de data (sem componente de hora)
  • Não otimizado para intervalos de datas muito grandes

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

Date Range Picker 📅

Date Range Picker is a user-friendly and simple package for Flutter that allows users to select a date range. It's designed to evolve over time, and its components are built to be reusable.

Date Range Picker

(Isn't it beautiful?)

Features ✅

  • Simple and user-friendly interface
  • Customizable theme
  • Reusable components
  • Field, form field, and dialog widgets
  • Functions to display a date range picker as a dialog
  • Supports minimum and maximum date limitations
  • Displays two months at once for easy navigation

Installation 🪛

Add the package to your pubspec.yaml file:

dependencies:
  date_range_picker: ^latest_version

Then, run flutter packages get in your terminal.

Usage 📖

To use the Date Range Picker, simply import the package and create a DateRangePickerWidget:

DateRangePickerWidget(
    doubleMonth: doubleMonth,
    maximumDateRangeLength: 10,
    minimumDateRangeLength: 3,
    initialDateRange: selectedDateRange,
    disabledDates: [DateTime(2023, 11, 20)],
    initialDisplayedDate:
    selectedDateRange?.start ?? DateTime(2023, 11, 20),
    onDateRangeChanged: onDateRangeChanged,
);

You can also use the DateRangeField or DateRangeFormField to display a dialog asking the user to select a date range, and to display the selected range. Here is an example:

DateRangeField(
    decoration: InputDecoration(
        label: Text("Date range picker"),
        hintText: 'Please select a date range',
    ),
    onDateRangeSelected: (DateRange? value) {
    // Handle the selected date range here
    },
  selectedDateRange: selectedRange,
);

Lastly, you can use the showDateRangePickerDialog function to display a dialog asking the user to select a date range:

showDateRangePickerDialog(
    context: context, 
    builder: datePickerBuilder
);
...

Widget datePickerBuilder(BuildContext context, dynamic Function(DateRange) onDateRangeChanged) => DateRangePickerWidget(
    doubleMonth: true,
    initialDateRange: selectedDateRange,
    onDateRangeChanged: onDateRangeChanged,
);

Customization 🎨

You can customize the appearance of the Date Range Picker by providing a custom CalendarTheme:

DateRangePickerWidget(
    onDateRangeChanged: (dateRange) {
    // Handle the selected dateRange here
    },
    theme: CalendarTheme(
    selectedColor: Colors.blue,
    dayNameTextStyle: TextStyle(color: Colors.black45, fontSize: 10),
    inRangeColor: Color(0xFFD9EDFA),
    inRangeTextStyle: TextStyle(color: Colors.blue),
    selectedTextStyle: TextStyle(color: Colors.white),
    todayTextStyle: TextStyle(fontWeight: FontWeight.bold),
    defaultTextStyle: TextStyle(color: Colors.black, fontSize: 12),
    radius: 10,
    tileSize: 40,
    disabledTextStyle: TextStyle(color: Colors.grey),
    )
,
);

License 📜

This package is released under the MIT License.

Contributing 🤝

We encourage and welcome contributions from the community to help improve and grow this project. If you would like to contribute, please feel free to fork the repository, make changes, and submit a pull request.

If you have any questions or need guidance, don't hesitate to reach out to the maintainer of this project. We appreciate your interest and support, and we look forward to collaborating with you!

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote