有没有办法根据较大(最长)的子项动态地使每个切换按钮的大小相同?我用 2 个文本制作了简单的切换按钮示例。如何使这些切换按钮具有相同的宽度而不对其大小进行硬编码
ToggleButtons(
children: [Text('long text'), Text('text')],
onPressed: (int index) {
setState(() {
for (int buttonIndex = 0;
buttonIndex < isSelected.length;
buttonIndex++) {
if (buttonIndex == index) {
isSelected[buttonIndex] = true;
} else {
isSelected[buttonIndex] = false;
}
}
});
},
isSelected: isSelected,
)
最佳答案
无需计算最大文本大小,您只需使用带有 minWidth
和 maxWidth
属性的 BoxConstraints
,如下所示:
ToggleButtons(
children: [Text('long text'), Text('text')],
constraints: BoxConstraints(minWidth: 70, maxWidth: 70, minHeight: kMinInteractiveDimension),
isSelected: [true, false],
)
切换按钮上的较大文本将被换行
希望对你有帮助
关于flutter - 如何动态地使切换按钮大小相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61090274/