Ok i think its newbie question I have map with datetime-list, if i do something like this its work perfect:
Map<DateTime, List> _activities;
_activities = {
_currentDay.add(Duration(days: 0)):activityNames.toList(),
_currentDay.add(Duration(days: 7)):activityNames.toList(),
_currentDay.add(Duration(days: 14)): activityNames.toList(),
_currentDay.add(Duration(days: 21)): activityNames.toList(),
_currentDay.add(Duration(days: 28)): activityNames.toList(),
}
But i want it like in 'for loop' => wrong example:
for( var i = 0 ; i <= 28; i=i+7 ) {
_activities[_currentDay.add(Duration(days:i))]=activityNames.toList();
}
looks good to me but says NoSuchMethedError: The method '[]=' was called null.
In first code, you are initializing the _activites variable, because of that you don't get error;
_activities = {.....
But in the second one, you don't initialize, so this is what you need:
Map<DateTime, List> _activities = {};
for( var i = 0 ; i <= 28; i=i+7 ) {
_activities[_currentDay.add(Duration(days:i))]=activityNames.toList();
}
In Dart every object is null by default, so you must initialize it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With