繁体   English   中英

如何在 Flutter DataColumn 小部件中将标签居中?

[英]How do you center the label in a Flutter DataColumn widget?

我可以在 DataRow 中将 DataCell 居中,但是如何为 DataColumn 标签执行此操作?

我希望第一个 DataColumn 左对齐,其余的居中。 将标签包装在中心小部件中不会生效。

new DataColumn(
            label: Center(
              child: Text(statName,textAlign: TextAlign.center,
                style: TextStyle(fontSize: 24.0, fontWeight: FontWeight.bold),),
            )
        );

中心小部件不适用于文本子项

找到方法:

DataColumn(
    label: Expanded(
        child: Text(
  'Label',
  textAlign: TextAlign.center,
))),

您可能希望将 Label 的内容包装在一个Center小部件中。 还有一个使用alignment: Alignment.center的 Align 小部件alignment: Alignment.center和您的 Text 作为它的子项。

这就是我解决这个问题的方法:

DataColumn(
            label: Center(
            widthFactor: 5.0, // You can set as per your requirement.
            child: Text(
            'View',
            style: style_16_bold_primary,
            ),
          ),
      ),

我遇到了同样的问题,并通过在 data_table.dart 文件中注释以下代码部分解决了该问题。

if (onSort != null) {
  final Widget arrow = _SortArrow(
    visible: sorted,
    down: sorted ? ascending : null,
    duration: _sortArrowAnimationDuration,
  );
  const Widget arrowPadding = SizedBox(width: _sortArrowPadding);
  label = Row(
    textDirection: numeric ? TextDirection.rtl : null,
    children: <Widget>[ label, arrowPadding, arrow ],
  );
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM