繁体   English   中英

在 Flutter 日历中添加事件时出现问题

[英]Problems adding events in Flutter Calendar

我正在尝试在 Flutter 中制作一个简单的日历应用程序。 他安装依赖项没有问题,但是当他尝试添加事件时却不能。 它使用 Date.Time.now 没有问题,但是当它尝试使用特定日期时它失败了。 我会很感激能帮助我的人。 非常感谢

import 'package:flutter_clean_calendar/flutter_clean_calendar.dart';


class MoonCalendar extends StatefulWidget {
  @override
  _MoonCalendarState createState() => _MoonCalendarState();
}

class _MoonCalendarState extends State<MoonCalendar> {

  DateTime selectedDay;
  List <CleanCalendarEvent> selectedEvent;

  final Map<DateTime,List<CleanCalendarEvent>> events = {
    DateTime (DateTime.utc(2022).year,DateTime.utc(07).month,DateTime.utc(15).day):
    [
      CleanCalendarEvent(

          'Event A',
          startTime: DateTime(
              DateTime.utc(2022).year,DateTime.utc(7).month,DateTime.utc(15).day,10,0),
          endTime:  DateTime(
              DateTime.utc(2022).year,DateTime.utc(7).month,DateTime.utc(15).day,12,0),
          description: 'A special event',
          color: Colors.blue[700]),

    ],


  };

  void _handleData(date){
    setState(() {
      selectedDay = date;
      selectedEvent = events[selectedDay] ?? [];
    });
    print(selectedDay);
  }
  @override
  void initState() {
    // TODO: implement initState
    selectedEvent = events[selectedDay] ?? [];
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Row(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              "Calendario",
              style: TextStyle(fontSize: 22),
            ),
            Text(
              " Lunar",
              style: TextStyle(fontSize: 22, color: Color.fromRGBO(56, 215, 199, 1)),
            )
          ],
        ),

      ),
      body:  SafeArea(
        child: Container(
          decoration: BoxDecoration(

              gradient: const LinearGradient(
                  colors: [
                    Color.fromRGBO(61, 138, 146, 0.2),
                    Color.fromRGBO(56, 215, 199, 0.1)
                  ]
              )

          ),
          child: Calendar(
            startOnMonday: true,
            selectedColor: Colors.blue,
            todayColor: Colors.red,
            eventColor: Colors.green,
            eventDoneColor: Colors.amber,
            bottomBarColor: Colors.deepOrange,
            onRangeSelected: (range) {
              print('selected Day ${range.from},${range.to}');
            },
            onDateSelected: (date){
              return _handleData(date);
            },
            events: events,
            isExpanded: true,
            dayOfWeekStyle: TextStyle(
              fontSize: 15,
              color: Colors.black12,
              fontWeight: FontWeight.w100,
            ),
            bottomBarTextStyle: TextStyle(
              color: Colors.black87,
            ),
            hideBottomBar: false,
            hideArrows: false,
            weekDays: ['Lun','Mar','Mié','Jue','Vie','Sáb','Dom'],
          ),
        ),
      ),
    );
  }
} ```

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM