Вы не могли итерировать или хранить больше данных, чем длина вашего массива. В этом случае вы можете сделать так:
for (int i = 0; i <= name.length - 1; i++) {
// ....
}
Или это:
for (int i = 0; i < name.length; i++) {
// ...
}
(отредактировано)
Это то, что вы ищете?
class Collapsible extends StatelessWidget{
@override
Widget build(BuildContext context) {
return ListView.builder(
itemBuilder: (context, i) {
if(i >= data.length) return null;
return ExpansionTile(
title: Text('name: ${data[i].title}'),
children: [
Text('firstname: ${data[i].children[0].title}'),
Text('firstname: ${data[i].children[1].title}'),
]
);
},
itemCount: data.length,
);
}
}