#flutter #dart
#flutter #dart
Вопрос:
Я пытаюсь заполнить сетку результатами отображения списка
var players = [
{"Name": "Josh", "Age": "25"},
{"Name": "Rick", "Age": "26"},
{"Name": "Michael", "Age": "22"},
{"Name": "Sander", "Age": "23"},
];
Я хотел бы заполнить сетку результатами, приведенными выше, но когда я использую List.генерирую сообщение «Тип элемента ‘Список<Карта<динамический, dynamic>>’ не может быть назначен типу списка ‘Виджет’.dartlist_element_type_not_assignable
«появляется для меня.
Код, в котором я пытаюсь заполнить сетку
GridView.count(
crossAxisCount: 2,
children: [
List.generate(players.length, (index) => {
})
],
)
Есть ли какой-либо способ заполнить эту сетку?
Ответ №1:
Вы можете поступить любым способом:
1st: By using the .map() method:
var players = [
{"Name": "Josh", "Age": "25"},
{"Name": "Rick", "Age": "26"},
{"Name": "Michael", "Age": "22"},
{"Name": "Sander", "Age": "23"},
];
GridView.count(
crossAxisCount: 2,
children: players.map(
(player) => Column(children: [
Text(player['Name']),
Text(player['Age'])
])).toList()
)
2nd: By using the List.generate() method
GridView.count(
crossAxisCount: 2,
children: List<Widget>.generate(
players.length,
(index) => Column(children: [
Text(players[index]['Name']),
Text(players[index]['Age'])
])
)
)
Комментарии:
1. Вот и все! Спасибо 🙂