如何使用 table 日历创建包含日期和时间的事件列表

How to create a event list with day and hour using table calendar

所以,用户的日历到 select 一天,之后他点击 (+) 按钮创建一个事件。然后,它向用户 select 显示事件开始的时间和分钟,在他写下事件名称并且事件显示在日历上方(在事件列表中)之后。但是直到现在我只使用天,现在,我也必须设置小时。

创建事件的方法:

Future<void> _createEvent() async {
    return showDialog<void>(
      context: context,
      builder: (BuildContext context) {
        return AlertDialog(
          title: Text('Write the event name', textAlign: TextAlign.center,
            style: TextStyle(color: Colors.black)),
          actions: [
            Padding(
              child: RaisedButton(
                child: Text("Save", style: TextStyle(color: Colors.white, fontSize: 20),),
                onPressed: (){
                  if(_eventController.text.isEmpty) return;
                  if(_myEvents[_calendarDaySelected] != null){
                    _myEvents[_calendarDaySelected].add(_eventController.text.toString());
                    _selectedEvents = _myEvents[_calendarDaySelected];
                  }else{
                    _myEvents[_calendarDaySelected] = [_eventController.text];
                    _selectedEvents = _myEvents[_calendarDaySelected];
                  }
                  _eventController.clear();
                  Navigator.pop(context);
                  setState(() {});
                },
              ),
            ),
          ],
        );
      },
    );
  }

在这种情况下我使用 _myEvents[_calendarDaySelected] 所以我想写 _myEvents[calendarDaySelected][_time] 但它抛出一个错误:

error: The argument type 'TimeOfDay' can't be assigned to the parameter type 'int'

我该怎么做?如果您需要更多代码,我可以 post 这里

我用这段代码解决了这个问题:

_myEvents[_calendarDaySelected].add({"time": _time, "eventName": _eventController.text.toString()});