我们在上一章回中介绍了Checkbox Widget相关的内容,本章回中将介绍
Transform
Widget.闲话休提,让我们一起Talk Flutter吧。
概念介绍
我们在这里说的Transform
是一种容器类widget,它和Container组件类似。它可以包含其它的组件,并且对被包含的组件进行平移,旋转、翻转和缩放操作。本章回中将详细介绍它的使用方法。
其实我们在上一章回中已经使用过该组件,只是没有详细介绍而已。Checkbox有一个缺点就是无法控制自身的大小,我们可以将它放在Transform组件中,然后对它进行缩放操作,进而达到控制大小的目的。
使用方法
通常情况下使用组件时需要通过组件的构造方法来创建组件,Transform
组件则不然,它提供了静态方法,通过静态方法可以创建Transform组件并且对其中的组件进行相关的操作,下面是常用的构造方法以及其功能:
- translate方法:主要用来对被包含组件进行平移操作,通过参数offset来设置平移的距离;
- rotate方法:主要用来对被包含组件进行旋转操作,通过参数angle来设置旋转的角度;
- scale方法:主要用来对被包含组件进行缩放操作,通过参数scale来设置缩放的倍数;
- flip方法:主要用来对被包含组件进行翻转操作,通过参数flipX来设置左右倒置,通过参数flipY来设置上下翻转;
这四种中方法中都有一个child
属性,用来指定被包含的组件,这是容器类组件的特点。
示例代码
//平移
final Widget _translate = Transform.translate(
offset: const Offset(0, 0),
child: const Text("Transform.translate"),
);
//旋转
final Widget _rotate = Transform.rotate(
angle: 30,
child: const Text("Transform.rotate"),
);
//上下翻转或者左右倒置
final Widget _flip = Transform.flip(
flipX: true,
flipY: false,
filterQuality: FilterQuality.medium,
child: const Text("Transform.flip"),
);
在上面的代码中,创建了三个Transform
组件,把它们赋值为Scaffold
组件的body属性就可以直接使用。被包含的组件是一个Text组件,编译并且运行上面的程序,就可以看到文本内容被平移、旋转和倒置。我在这里就不演示程序运行结果了,建议大家自己动手去实践。
此外,这里没有演示缩放操作的代码,它的用法和其它操作类似,大家可以参考上一章回中Checkbox
组件的示例代码,我们通过Transform
的scale
方法对Checkbox组件进行缩放操作。
看官们,关于Transform Widget
的内容就介绍到这里,欢迎大家在评论区交流与讨论!