Я хочу показать SimpleDialog с ListView.builder в моем приложении Flutter с помощью этого кода:
showDialog(
context: context,
builder: (BuildContext context) {
return new SimpleDialog(
children: <Widget>[
new FittedBox(
child: new ListView(
children: <Widget>[
new Text("one"),
new Text("two"),
],
),
)
],
);
},
);
который дает эту ошибку (извините, я не мог обернуть журналы как код, потому что Stackoverflow жалуется, что там слишком много кода):
═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ (4481): Во время выполненияLayout(): I/flutter (4481) было выбрано следующее утверждение: RenderViewport не поддерживает возвращаемые внутренние размеры. I/flutter (4481): для вычисления собственных размеров потребуется создать экземпляр каждого дочернего объекта в окне просмотра, который I/flutter (4481): поражает точку просмотра в лени. I/flutter (4481): Если вы просто пытаетесь сжимать окно просмотра в направлении основной оси, рассмотрите флажок I/flutter (4481): объект рендеринга RenderShrinkWrappingViewport (виджет ShrinkWrappingViewport), который достигает этого I/flutter (4481): эффект без реализации API с внутренним размером. I/flutter (4481):... I/flutter (4481): Выброшено еще одно исключение: RenderBox не был выложен: RenderPhysicalShape # 83d92 relayoutBoundary = up2 NEEDS-PAINT I/flutter (4481): Еще одно исключение было выбрано: package: flutter/src/rendering/shifted_box.dart ': Failed assertion: строка 310 pos 12:' child.hasSize ': не верно. I/flutter (4481): Другое исключение было брошено: RenderBox не был выложен: RenderPhysicalShape # 83d92 relayoutBoundary = up2
Я попытался использовать Контейнер с определенной высотой и шириной, и он работает, но я хочу, чтобы ListView располагался в диалоге.
Как включить ListView в SimpleDialog?