Вы не показали свое объявление для twoDWeeksArray, поэтому я могу только предположить, что оно не объявлено как двумерный массив.
Вот рабочий пример использования вашей структуры, хотя я думаю, что, возможно, ваш определяемые типы неоправданно сложны:
struct ExpandableWeeks {
var isExpanded: Bool = true
var dates: [Date]
}
var myDates = [Date(), Date()]
var twoDWeeksArray: [[ExpandableWeeks]] = [] // 2D Array declaration
// Append works here because it is declared as a 2D array
twoDWeeksArray.append( [ExpandableWeeks(isExpanded: true, dates: myDates )] )
twoDWeeksArray[0].append( ExpandableWeeks(isExpanded: true, dates: myDates ))
print(twoDWeeksArray.count)
print(twoDWeeksArray[0].count)
// accessing the 2D Array's elements
print(twoDWeeksArray[0][0])
print(twoDWeeksArray[0][1])
Вывод журнала:
1
2
ExpandableWeeks(isExpanded: true, dates: [2020-03-11 01:05:06 +0000, 2020-03-11 01:05:06 +0000])
ExpandableWeeks(isExpanded: true, dates: [2020-03-11 01:05:06 +0000, 2020-03-11 01:05:06 +0000])