FLUTTER ECOSYSTEM

Azare77/jalali_table_calendar_plus

一个用于在表格视图中使用伊朗历的Flutter包

jalali_table_calendar_plus 项目封面
Stars
7
Forks
7
最近推送(UTC)
2026年8月26日
项目状态
未归档
Ali Zare GitHub avatar
GITHUB User

Ali Zare ↗

Yazd
语言DartC++CMakeSwiftCHTMLKotlinObjective-C

此仓库发布的插件

使用的依赖

依赖清单 4 项

原始 README

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

展开 / 收起项目 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)