【发布时间】:2021-10-08 19:23:08
【问题描述】:
我试图在颤振中实现这样的目标。我有一个带有这些圆形容器的水平滚动条。如果可滚动中的元素超过 3,我希望这些容器的宽度缩小,如果元素小于 2,它应该根据图像扩展。我想要的正是这张图像,我一直在阅读有关灵活的内容小部件,但是当我将它包装在可滚动的行中时,它会给出布局特定的问题。有什么办法可以实现这个吗?
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
SingleChildScrollView(
padding: EdgeInsets.zero,
scrollDirection: Axis.horizontal,
child: Row(
children: [
...List.generate(
9,
(index) => Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(20),
color: Colors.green,
),
height: 100,
width: 100,
),
),
)
],
)),
SizedBox(
height: 20,
),
Row(
children: [
...List.generate(
2,
(index) => Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
height: 100,
width: 180,
decoration: BoxDecoration(
color: Colors.green,
borderRadius: BorderRadius.circular(20))),
))
],
),
SizedBox(
height: 20,
),
Row(
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
height: 100,
width: 350,
decoration: BoxDecoration(
color: Colors.green,
borderRadius: BorderRadius.circular(20))),
),
],
)
],
),
),
);
}
上述构建方法产生以下结果。(此处的值是硬编码的,仅用于演示)。列表值将是动态的,所需的结果应该像视频中的那样。我该如何处理?
【问题讨论】:
-
请分享Minimal, Reproducible Example,以便我们更好地帮助您
-
@rckrd 我已经进行了编辑,你能看看吗?在此先感谢..如果您愿意,我们可以对此进行进一步讨论...