flutter - 如何动态地使切换按钮大小相同

标签 flutter dart

有没有办法根据较大(最长)的子项动态地使每个切换按钮的大小相同?我用 2 个文本制作了简单的切换按钮示例。如何使这些切换按钮具有相同的宽度而不对其大小进行硬编码

enter image description here

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,
        )

最佳答案

无需计算最大文本大小,您只需使用带有 minWidthmaxWidth 属性的 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/

相关文章:

android - 如何在 flutter 中扩展一个 textField 看起来像一个文本区域

image - 如何在Dart Image.network中获取原始图像大小?

flutter - 在 Dart 中将 privateKey 转换为 PKCS#8 格式

带后缀的 Flutter TextField

dart - Polymer Dart @observable 不同的行为

flutter - 无法在初始化程序中访问实例成员 'widget'

flutter - 如何使 flutter Flipkart 像主页中的搜索 View 一样?

flutter - 在 Flutter 中创建对齐文本的网格/表格

flutter - 将用户带到设备设置以在 flutter 中激活 gps

firebase - Flutter - Firestore 流快照,其中更新子句参数时不进行流式传输