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

插件详情v1.1.4

jalali_table_calendar_plus

一个用于在表格视图中使用伊朗历的包,以及一个用于选择日期的对话框

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
158
喜欢数
6
Pub 分数
150

安装插件

flutter pub add jalali_table_calendar_plus

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

JalaliTableCalendarPlus 是一个 Flutter 包,可将伊朗历(波斯历)日历集成到表格视图格式中,支持日期选择和显示。它还提供了一个对话框,方便在伊朗历系统中选择日期。专为面向波斯语用户的应用程序或需要伊朗历日期功能的应用程序设计,可在多个平台上提供简洁且可自定义的界面。该包支持 Android、iOS、Web、macOS、Windows 和 Linux,使其在跨平台开发中具有高度可用性。

适合场景

  • 以表格格式显示伊朗历日期
  • 通过对话框界面选择日期
  • 在波斯语应用程序中集成伊朗历
  • 使用伊朗历日期构建预约调度工具
  • 使用伊朗历创建事件日历

主要特点

  • 伊朗历支持
  • 表格视图布局
  • 日期选择器对话框
  • 跨平台兼容性
  • 可自定义的 UI
  • 对多平台的支持

适合对象

  • 面向伊朗或波斯语受众的应用程序
  • 需要处理伊朗历日期的开发者
  • 需要波斯日历的基于日历的应用程序
  • 具有国际化需求的项目
  • Flutter 开发人员构建多语言环境应用程序

使用建议

  • 需要了解伊朗历系统
  • 仅限伊朗历日期逻辑
  • 可能需要额外的本地化支持非波斯文文本
  • 不适用于仅支持格里高利历的应用程序
  • UI 自定义可能需要更深入的 Dart 知识

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Jalali Table Calendar Plus

A rewritten package of jalali_table_calendar

Jalali Calendar

  • Table view of the calendar
  • Range selection
  • Customizable holidays
  • Modal for date selection
  • Event list definition for each date
  • Custom marker definition for each day

Setup

Add this line to the pubspec.yaml file
jalali_table_calendar_plus: ^1.1.3
Widget buildCalendar(BuildContext context) {
  DateTime today = DateUtils.dateOnly(DateTime.now());
  Map <DateTime, List<dynamic>>events = {
    today: ['sample event', 26],
    today.add(const Duration(days: 1)): ['all types can use here', {"key": "value"}],
  };
  return JalaliTableCalendar(
    events: events,
    range: range,
    option: JalaliTableCalendarOption(
      daysOfWeekTitles: [
        "شنبه",
        "یکشنبه",
        "دوشنبه",
        "سه شنبه",
        "چهارشنبه",
        "پنجشنبه",
        "جمعه"
      ],
    ),
    customHolyDays: [
      // use jalali month and day for this
      HolyDay(month: 4, day: 10), // For Repeated Days
      HolyDay(year: 1404, month: 1, day: 26), // For Only One Day
    ],
    onRangeSelected: (selectedDates) {
      for (DateTime date in selectedDates) {
        print(date);
      }
    },
    marker: (date, event) {
      if (event.isNotEmpty) {
        return Positioned(
            top: -2,
            left: 1,
            child: Container(
                padding: const EdgeInsets.all(5),
                decoration: const BoxDecoration(
                    shape: BoxShape.circle, color: Colors.blue),
                child: Text(event.length.toString())));
      }
      return null;
    },
    onDaySelected: (DateTime date) {},
  );
}

HolyDays

HolyDay(year: Jalai_Year , month: Jalai_Month, day: Jalai_Day)

Parameter Usage Data Type
year Jalai Year Int
month Jalai Month Int
day Jalai Day Int

Parameters

Parameter Usage Data Type
events A map of events for each day Map <DateTime,List>
range Used for range selection bool
customHolyDays A list of customizable holidays List HolyDay(year:Int,month:Int,day:Int)
onRangeSelected Method executed after range selection is completed List
onDaySelected Method executed after single date selection DateTime
marker Method to receive user-designed markers for each day (DateTime date, List eventsOfDay)

تقویم جلالی

بازنویسی شده پکیج jalal_table_calendar

  • نمای جدولی تقویم
  • انتخاب به صورت بازه ای
  • تعریف تعطیلات به صورت شخصی سازی شده
  • مودال برای انتخاب تاریخ
  • تعریف لیست رویداد ها برای هر تاریخ
  • تعریف مارکر مخصوص برای هر روز

راه اندازی

این خط را به فایل pubspec.yaml اضافه کنید
jalali_table_calendar_plus: ^1.1.3
Widget buildCalendar(BuildContext context) {
  DateTime today = DateUtils.dateOnly(DateTime.now());
  Map <DateTime, List<dynamic>>events = {
    today: ['sample event', 26],
    today.add(const Duration(days: 1)): ['all types can use here', {"key": "value"}],
  };
  return JalaliTableCalendar(
    events: events,
    range: range,
    customHolyDays: [
      // use jalali month and day for this
      HolyDay(month: 4, day: 10), // For Repeated Days
      HolyDay(year: 1404, month: 1, day: 26), // For Only One Day
    ],
    onRangeSelected: (selectedDates) {
      for (DateTime date in selectedDates) {
        print(date);
      }
    },
    marker: (date, event) {
      if (event.isNotEmpty) {
        return Positioned(
            top: -2,
            left: 1,
            child: Container(
                padding: const EdgeInsets.all(5),
                decoration: const BoxDecoration(
                    shape: BoxShape.circle, color: Colors.blue),
                child: Text(event.length.toString())));
      }
      return null;
    },
    onDaySelected: (DateTime date) {},
  );
}

HolyDays

HolyDay(year: Jalai_Year , month: Jalai_Month, day: Jalai_Day)

پارامتر کاربرد Data Type
year سال جلالی Int
month ماه جلالی Int
day روز جلالی Int

پارامتر ها

پارامتر کاربرد نوع داده
events یک Map از رویداد های هر روز Map <DateTime,List>
range برای انتخاب بازه ای استفاده میشود bool
customHolyDays لیستی از تطیلات شخصی سازی شده List HolyDay(year:Int,month:Int,day:Int)
onRangeSelected متدی که بعد از اتمام انتخاب بازه ای اجرا میشود List
onDaySelected متدی که بعد از انتخاب تاریخ در حالت تکی اجرا میشود DateTime
marker متد ساخت مارکر های طراحی شده کاربر را برای هر روز را دریافت میکند (DateTime date, List eventsOfDay)

所属分类

依赖

依赖清单 1 项

源码仓库

使用此插件的项目

暂无相关数据。