【问题标题】:Flutter android equivalent of scaleX and scaleY propertyFlutter android 等效于 scaleX 和 scaleY 属性
【发布时间】:2018-11-01 08:05:47
【问题描述】:

在 Android 中,我可以使用 scaleXscaleY 属性,但在 Flutter 中我找不到类似的东西。

Transform.scale(),但它结合了scaleXscaleY,而我需要的只是scaleX。我知道 Perspective 可以提供帮助,但对于 scaleX 属性来说它太多了。谁有更好的答案?

【问题讨论】:

  • 我知道 SizedBox,谢谢,但你确定你在这里谈论的是规模吗?因为我说的不是宽度和高度。
  • 所以您真的想要缩放内容吗?如果是这样,请使用Transform 通用ctor - 查看Transform.scale 如何定义transform 属性并执行类似操作:transform = Matrix4.diagonal3Values(scale, scale, 1.0),
  • 不好意思,我不知道scaleX怎么用,你可以在回答里发一下。
  • 谢谢@pskink,它成功了。请写在答案中,我会接受的。

标签: dart flutter flutter-layout


【解决方案1】:

最简单的方法是查看Transform.scale 构造函数的工作原理,并在您的自定义Transform 中使用它:

Transform.scale({
     Key key,
     @required double scale,
     this.origin,
     this.alignment = Alignment.center,
     this.transformHitTests = true,
     Widget child,
   }) : transform = Matrix4.diagonal3Values(scale, scale, 1.0),
       super(key: key, child: child);

它同时缩放xy,因此如果您只想缩放x 轴,只需使用以下命令:

Transform(
  transform: Matrix4.diagonal3Values(scale, 1.0, 1.0),
  child: ....,)

【讨论】:

  • 非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-09
  • 2015-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多