我想知道如何在扑动中垂直和水平地集中文本部件的内容。 我只知道如何使用center (child: Text("test"))将小部件本身居中,但不知道内容本身。默认情况下,它是向左对齐的。在Android中,我相信TextView的属性,实现这被称为重力。

我想要的例子:


当前回答

概述:我使用Flex小部件使用MainAxisAlignment将文本置于页面的中央。沿水平轴居中。我使用容器填充来创建文本周围的空白空间。

  Flex(
            direction: Axis.horizontal,
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
                Container(
                    padding: EdgeInsets.all(20),
                    child:
                        Text("No Records found", style: NoRecordFoundStyle))
  ])

其他回答

概述:我使用Flex小部件使用MainAxisAlignment将文本置于页面的中央。沿水平轴居中。我使用容器填充来创建文本周围的空白空间。

  Flex(
            direction: Axis.horizontal,
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
                Container(
                    padding: EdgeInsets.all(20),
                    child:
                        Text("No Records found", style: NoRecordFoundStyle))
  ])

如果您是intellij IDE用户,可以使用快捷键Alt+Enter,然后选择居中换行,然后添加textAlign: textAlign . Center

你必须设置你的文本部件属性来设置textAlign.center。

center(
   child : Text(
  'Hello',
   textAlign: TextAlign.center))

你需要在文本部件上使用textAlign属性。这对我来说是最好的结果

Text(
  'Hi there',
   textAlign: TextAlign.center,                          
 )

把文本放在中间:

Container(
      height: 45,
      color: Colors.black,
      child: Center(
        child: Text(
            'test',
            style: TextStyle(color: Colors.white),
        ),
      ),
    );