flutter 无法使图标在TextButton中居中

egdjgwm8  于 2022-12-19  发布在  Flutter
关注(0)|答案(3)|浏览(281)

我尝试将最小化图标居中显示在此图标按钮中,但无法使其工作:

@override
  Widget build(BuildContext context) {
    return Row(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        SizedBox(
          height: 25,
          child: TextButton(
            onPressed: appWindow.minimize,
            style: const ButtonStyle(
                alignment: Alignment.center,
                padding: MaterialStatePropertyAll(EdgeInsets.all(0))),
            child: const Icon(
              Icons.minimize,
              color: Colors.white,
            ),
          ),
        ),
        TextButton(
            onPressed: maximizeOrRestore,
            child: Icon(
              appWindow.isMaximized ? Icons.fullscreen_exit : Icons.fullscreen,
              color: Colors.white,
            )),
        TextButton(
          onPressed: appWindow.close,
          child: const Icon(
            Icons.close,
            color: Colors.white,
          ),
        )
      ],
    );
  }

我希望按钮居中,正如你所看到的,我已经尝试使用对齐和填充

c3frrgcw

c3frrgcw1#

当你说“居中最小化的图标”时,你的意思是这个图标应该在另外两个图标之间吗?在这种情况下,你只需要在Row小部件的子部件中切换前两个小部件。
但我认为你希望最小化图标更高一些,这样它就像-〉-️X
如果这是你想要的,那么你不能使用Icons.minimize。如果你在this page上检查这个图标,你会注意到最小化图标看起来像一个下划线。这是设计的。我认为这看起来不错,但是如果你坚持要用减号类型的符号,那么你可以使用Icons.remove_rounded

a0x5cqrl

a0x5cqrl2#

这并不是说图标没有居中,材质minimize图标的上方有空格,因为它应该是向下的,以理解这是一个最小化按钮,就像maximize按钮的下方有空格一样。如果你真的想让它居中,你可以尝试使用不同的图标。尝试使用Icons.horizontal_rule

ipakzgxi

ipakzgxi3#

您可以像这样使用CupertinoIcons.minus

TextButton(
        onPressed: appWindow.minimize,
        child: const Icon(
          CupertinoIcons.minus,
          color: Colors.white,
        ),
      ),

相关问题