Вы можете сделать это, перечислив через ваш массив
Во-первых, согласно предложениям Vadian, измените его на необязательный и не сохраняйте изображения непосредственно в массив, вместо этого сохраняйте имя изображений.
struct Section {
var infoType: String
var info: [String]
var icon: [UIImage]
var expanded: Bool
}
Создайте функцию в вашем viewController, которая изменит содержимое на фактическое, когда у вас будет это.
func populateArrayWithActualInfo() {
for (index,section) in self.sections.enumerated() {
var secInside = section
secInside.info = ["a", "b", "c"]
self.sections[index] = secInside
}
print(self.sections)
}
ИЛИ Если вы хотите установить динамическую информацию из уже существующего массива, вы можете передать ее в функцию.
func populateArrayWithActualInfo(_ yourData:[[String]]) {
for (index,section) in self.sections.enumerated() {
var secInside = section
secInside.info = yourData[index]
self.sections[index] = secInside
}
print(self.sections)
}
Попробуйте и поделитесь результатами.