У меня есть карта с петлей маркеров, для каждого маркера я пытаюсь показать закусочную с названием местоположения.У меня есть код, подобный.
static final GlobalKey<ScaffoldState> scaffoldKey =
GlobalKey<ScaffoldState>();
for (int i = 0; i < list.length; i++) {
markers.add(new Marker(
width: 80.0,
height: 80.0,
point: list[1].values.elementAt(i),
builder: (ctx) => new Container(
child: new GestureDetector(
onTap: () {
scaffoldKey.currentState.showSnackBar(new SnackBar(
duration: const Duration(seconds: 5),
content: new Text(coords.keys.elementAt(i)),
action: SnackBarAction(
label: 'Ver',
onPressed: () {
// Some code to undo the change!
},
),
));
},
child: new Icon(Icons.home, color: Colors.red[300])))));
}
return new Scaffold(
key: scaffoldKey,
Когда я загружаю эту страницу, ничего не загружается, и консоль возвращает
В дереве виджетов обнаружен дубликат GlobalKey.
Я полагаю, что ошибка на скаффолде, для каждой итерации она пытается установить одно и то же имя globalkey.Поэтому мне нужно идентифицировать этот ключ с другим именем, когда он делает foreach.Любая идея, как я могу это сделать?