搜索插件、代码仓与 APP 分类

GitHub 代码仓zulfahmi93/month-year-picker

月份-年份选择器

用于选择月份和年份的 Material 选择器。

月份-年份选择器 项目封面
星标
18
复刻
143
最近推送(UTC)
2025年5月22日
项目状态
未归档

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

Material Month/Year Picker

Pub GitHub Workflow Status

The month year picker inspired by the Flutter's date picker design.

Quick Start

  1. Open your pubspec.yaml file and add this entry:

    month_year_picker: ^0.5.0+1
    

    OR just run flutter pub add month_year_picker using your preferred terminal app.

  2. Then run flutter pub get.

  3. Import this library into your code:

    import 'package:month_year_picker/month_year_picker.dart';
    

    Additionally, ensure your MaterialApp refers to the following localizationsDelegates:

        GlobalMaterialLocalizations.delegate,
        MonthYearPickerLocalizations.delegate,
    
  4. Usage in code:

    final selected = await showMonthYearPicker(
      context: context,
      initialDate: DateTime.now(),
      firstDate: DateTime(2019),
      lastDate: DateTime(2023),
    );
    

Parameters

Parameter Description
context Must not be null. Will be passed to the internal showDialog function call.
initialDate Must not be null and must fall between the firstDate and lastDate. The initialDate will be truncated to its year and month components. When the month/year picker is first displayed, it will show the month/year of the initialDate, with initialDate selected.
firstDate Must not be null. The firstDate will be truncated to its year and month components. This is the earliest allowable month/year.
lastDate Must not be null. The lastDate will be truncated to its year and month components. This is the latest allowable month/year.
selectableMonthYearPredicate Can be null. The function to provide full control over which month/year can be selected. If provided, only the month/year that the selectableMonthYearPredicate returns true for will be selectable.
locale Can be null. If provided, will be used to set the locale for the month/year picker. Otherwise, it defaults to the ambient locale provided by Localizations.
useRootNavigator Can be null. Will be passed to the internal showDialog function call.
routeSettings Can be null. Will be passed to the internal showDialog function call.
textDirection Can be null. If provided, will be used to set the text direction for the month/year picker. Otherwise, it defaults to the ambient locale provided by Directionality.
builder Can be null. This parameter can be used to wrap the dialog widget with a parent widget.
initialMonthYearPickerMode Must not be null. Can be used to have the year picker initially appear in the MonthYearPickerMode.year mode. It defaults to the MonthYearPickerMode.month mode.

Screenshots

Mode Screenshot
Month picker in portrait mode with default locale.
Year picker in portrait mode with default locale.
Month picker in portrait mode with Malay locale.
Year picker in portrait mode with Malay locale.
Month picker in portrait mode with Arabic locale.
Year picker in portrait mode with Arabic locale.
Month picker in landscape mode with default locale.
Year picker in landscape mode with default locale.
Month picker in landscape mode with Malay locale.
Year picker in landscape mode with Malay locale.
Month picker in landscape mode with Arabic locale.
Year picker in landscape mode with Arabic locale.

Building From Source

Dependencies
  1. Dart SDK version 3.8.0 or newer.
  2. Flutter SDK version 3.32 or newer.
Steps
  1. Clone this git repo into your machine.
  2. Run .\gen-l10n.ps1 to re-generate the localised strings.

Features and Bugs

Please file feature requests and bugs at the issue tracker.

License

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

Zulfahmi Ahmad GitHub avatar
GitHub 作者

Zulfahmi Ahmad ↗

Malaysia
语言DartC++CMakeSwiftCHTMLPowerShellKotlinObjective-C

此仓库发布的插件

使用的依赖

依赖清单 4 项

  • flutter{"sdk":"flutter"}
  • flutter_localizations{"sdk":"flutter"}
  • intl^0.20.0
  • flutter_lints开发依赖^4.0.0

如何选择适合项目的代码仓?

先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。

  1. 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
  2. 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
  3. 使用前在 GitHub 核对 README、许可证与 Issues。

来源与维护

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗