根据父级大小按比例缩小小部件中的所有子级
Scale down all children in widget by a factor based on the parent size
在 Flutter 中,我正在实现 "what's new" 屏幕,它将显示应用中真实屏幕的预览。
为此,我在 "what's new" 流程中重复使用屏幕 Widgets
。
预览将以较小的 Container
显示,不会覆盖整个屏幕。
我想缩小 此Container
中所有小部件的文本大小、行高等,以匹配较小的边界。
有没有办法做到这一点,而无需分别为每个 Widget 添加较小的样式?
例如将所有 fontSizes
缩小 20% 以获得 Widget child
,无论主题中设置的大小如何
我找到了解决方案。使用 Transform.scale(...)
包裹子部件树将根据提供的比例因子向下缩放树中的所有部件。
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Transform.scale(
scale: 0.9,
child: MyScaledWidgetTree(),
),
Container(
child: ...,
),
],
)
在 Flutter 中,我正在实现 "what's new" 屏幕,它将显示应用中真实屏幕的预览。
为此,我在 "what's new" 流程中重复使用屏幕 Widgets
。
预览将以较小的 Container
显示,不会覆盖整个屏幕。
我想缩小 此Container
中所有小部件的文本大小、行高等,以匹配较小的边界。
有没有办法做到这一点,而无需分别为每个 Widget 添加较小的样式?
例如将所有 fontSizes
缩小 20% 以获得 Widget child
,无论主题中设置的大小如何
我找到了解决方案。使用 Transform.scale(...)
包裹子部件树将根据提供的比例因子向下缩放树中的所有部件。
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Transform.scale(
scale: 0.9,
child: MyScaledWidgetTree(),
),
Container(
child: ...,
),
],
)