Flutter 如何在颤振中调整图标按钮的大小(高度和宽度)

Flutter 如何在颤振中调整图标按钮的大小(高度和宽度),flutter,Flutter,如何在颤振中调整图标按钮的大小(高度和宽度)?它似乎采用默认的宽度和高度。没有“高度”或“宽度”属性 new IconButton( padding: new EdgeInsets.all(0.0), color: themeData.primaryColor, icon: new Icon(Icons.clear, size: 18.0), onPressed: onDelete, ) 您可以使用SizedBox强制它调整自身大小 new SizedBox(

如何在颤振中调整图标按钮的大小(高度和宽度)?它似乎采用默认的宽度和高度。没有“高度”或“宽度”属性

new IconButton(
    padding: new EdgeInsets.all(0.0),
    color: themeData.primaryColor,
    icon: new Icon(Icons.clear, size: 18.0),
    onPressed: onDelete,
)

您可以使用SizedBox强制它调整自身大小

new SizedBox(
   height: 18.0,
   width: 18.0,
   child: new IconButton(
      padding: new EdgeInsets.all(0.0),
      color: themeData.primaryColor,
      icon: new Icon(Icons.clear, size: 18.0),
      onPressed: onDelete,
   )
)

有一种比公认的答案更新的方法。看起来是这样的:

IconButton(
  iconSize: 18.0,
  icon: new Icon(Icons.clear)
因此,使用iconSize属性并去掉SizedBox

new SizedBox(
   height: 18.0,
   width: 18.0,
   child: new IconButton(
      padding: new EdgeInsets.all(0.0),
      color: themeData.primaryColor,
      icon: new Icon(Icons.clear, size: 18.0),
      onPressed: onDelete,
   )
)

我注意到,按下按钮时,旧的已接受解决方案的绘图效果不好。

您可以使用InkWell替换IconButton:

InkWell(
    child: Icon(Icons.clear, size: 18.0, color: themeData.primaryColor),
    onTap: onDelete,
),

如果您使用“资源”文件夹中的图像,则应使用以下选项:

IconButton(
      icon: Image.asset(
        "assets/images/play_3x.png",
        height: 100,
        width: 100,
        color: Colors.white,
)

使用
图标按钮上的
约束
属性:

IconButton(
约束:框约束(最大高度:36),
图标:新图标(Icons.clear,大小:18.0),
)

iconSize属性只更改图标本身的大小,而不更改其容器(实际上是一个大小框),因此我认为更改按钮大小的唯一方法是提供您自己的大小框包装,正如公认的答案所示,您为什么认为需要-1?这段代码当然有效,我在我的项目中使用它。可能是我们使用了不同的小部件。请快速考虑一下声誉,然后说“唯一的方法……”这是一个可以接受的答案。没有缺点这是错误的。它不会改变按钮的大小,只会改变图标。人们读错了吗?这显然是最正确的方法。说它不正确的人一定是使用了
图标
大小
属性,而不是
图标按钮
图标大小
属性。这会使图标变厚还是只会增加图标按钮本身的面积?IconButton的一个恼人之处是无法删除默认填充。