【发布时间】:2020-01-13 06:13:43
【问题描述】:
所以我是1.9.1 中介绍的ToggleButtons 像这样:
Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Padding(padding: EdgeInsets.only(top: 8),),
Text('Sort By: '),
Align(
alignment: Alignment.topLeft,
child: ToggleButtons(
borderColor: Color(0xffED7D31),
selectedBorderColor: Color(0xffED7D31),
selectedColor: Color(0xffAD7651),
fillColor: Color(0xffFBE5D6),
color: Color(0xffBF987E),
children: <Widget>[
...state.sortBy.keys.map((name) => Text(name)).toList()
],
onPressed: (index) => state.toggleSortBy(index),
isSelected: state.sortBy.values.toList(),
),
),
],
),
这显然会从地图创建按钮小部件列表,我面临的问题是我在屏幕上看到以下警告
右溢出 X 个像素
所以我的问题很简单,就是有没有办法像 CSS 中那样“弯曲”按钮,这意味着当按钮的数量超过屏幕大小时,按钮会自动从下一行开始。
编辑:
state.sortBy 只是一个 Map,我将小部件的文本与它们的 selected 值一起存储在其中:
LinkedHashMap<String,bool> sortBy = LinkedHashMap.from({
'Ascending' : true,
'Descending' : false,
})
【问题讨论】: