calendar_bottom_sheet.dart 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import 'package:cs_resources/theme/app_colors_theme.dart';
  2. import 'package:flutter/material.dart';
  3. import 'full_calendar.dart';
  4. /*
  5. * 自定义的日历选择 BottomSheet 弹框
  6. */
  7. class CustomCalendarBottomSheet extends StatelessWidget {
  8. final DateTime firstDate;
  9. final DateTime? lastDate;
  10. final String locale;
  11. final DateTime selectedDate;
  12. final Function(DateTime) onDateChange;
  13. const CustomCalendarBottomSheet({
  14. Key? key,
  15. required this.firstDate,
  16. this.lastDate,
  17. required this.selectedDate,
  18. required this.locale,
  19. required this.onDateChange,
  20. }) : super(key: key);
  21. @override
  22. Widget build(BuildContext context) {
  23. return Column(
  24. mainAxisSize: MainAxisSize.min,
  25. children: [
  26. const SizedBox(height: 20),
  27. Container(
  28. width: 60,
  29. height: 6,
  30. decoration: BoxDecoration(borderRadius: BorderRadius.circular(3.0), color: const Color(0xFFE0E0E0)),
  31. ),
  32. const SizedBox(height: 13.0),
  33. FullCalendar(
  34. startDate: firstDate,
  35. endDate: lastDate,
  36. selectedDate: selectedDate,
  37. padding: 25,
  38. locale: locale,
  39. dateColor: context.appColors.textBlack,
  40. dateSelectedBg: context.appColors.btnBgDefault,
  41. dateSelectedColor: Colors.white,
  42. events: [],
  43. onDateChange: onDateChange,
  44. ),
  45. ],
  46. );
  47. }
  48. }