我在垂直列表中添加水平 ListView 。它没有显示任何内容
@override
Widget build(BuildContext context) {
return Scaffold(
body: new ListView.builder(
itemCount: 3,
scrollDirection: Axis.vertical,
itemBuilder: (context, position) {
if (position == 0) {
return Container(
child: Text("First rwo"),
);
} else if (position == 1) {
return Container(
child: Text("second rwo"),
);
} else if (position == 2) {
return Container(
child: ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: 4,
shrinkWrap: true,
itemBuilder: (context, pos) {
return Text("List ");
}));
}
}));
}
当我将 height
属性添加到位置 2 container
时,它可以工作。
但我想要动态高度。
SingleChildScrollView
是另一种选择,但它不适合无限列表。
最佳答案
切换到 SingleChildScrollview
内的 Row
:
@override
Widget build(BuildContext context) {
return Scaffold(
body: new ListView.builder(
itemCount: 3,
scrollDirection: Axis.vertical,
itemBuilder: (context, position) {
if (position == 0) {
return Container(
child: Text("First rwo"),
);
} else if (position == 1) {
return Container(
child: Text("second rwo"),
);
} else if (position == 2) {
return SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Row(
children: [Text("List"), Text("List"), Text("List"), Text("List")],
),
);
}
},
),
);
}
https://stackoverflow.com/questions/54480887/
相关文章:
flutter - 在 Android Studio 中运行和热重载 flutter 的问题(坏状态
dart - StreamBuilder 抛出 Dirty State 说 Invalid Argu
flutter - 如何在 Flutter 中向 TextFormField 添加阴影
dart - 如何根据背景图像更改文本颜色 - Flutter
android - Flutter:构建 APK 时如何传递 Gradle 参数?
dart - Flutter ThemeData 不适用于文本