如何在颤动中根据父级调整图标大小

Posted

技术标签:

【中文标题】如何在颤动中根据父级调整图标大小【英文标题】:How to size an icon according to parent in flutter 【发布时间】:2020-07-14 23:44:53 【问题描述】:

我想将容器内的图标大小调整为该容器的大小,这样在较大的设备中它就不会因为对大小值进行硬编码而变小。我正在尝试这样的事情

Container(
  child: Icon(
    Icons.beach_access,
    size: double.infinity,
  )
)

【问题讨论】:

我要设置Icon的大小,Container上有alignment属性我只能对齐child 您可以尝试在图标周围使用SizedBox,前提是您已正确设置图标周围的容器尺寸。我建议使用 MediaQuery 来获取屏幕的尺寸,并根据屏幕大小适当地设置容器的高度/宽度。 容器填满整个屏幕还是从另一个小部件继承大小?如果来自另一个小部件,则在您的问题中添加该小部件代码 【参考方案1】:

如果您希望图标的大小与其 Container 父级的末端相吻合,您可以将其放置在 FittedBox 中

Container(
  child: FittedBox(
     child: Icon(
        Icons.beach_access,
          ),
        ),
      ),

您可以更改 FittedBox 的 fit 属性以调整某些大小并更改对齐方式。

https://api.flutter.dev/flutter/widgets/FittedBox-class.html

【讨论】:

以上是关于如何在颤动中根据父级调整图标大小的主要内容,如果未能解决你的问题,请参考以下文章

如何根据设置的主题更改颤动中的状态栏图标和文本颜色?

如何在android中根据谷歌地图不同的缩放级别调整谷歌地图标记的大小

当鼠标悬停在边框上时,如何完全禁用调整窗口大小,包括调整大小图标?

如何在颤动中缩小和放大图标动画?

如何在颤动中更改抽屉图标?

如何使用 XML 根据图像大小调整 Android 组件的大小