flutter–页面布局(Transform、Baseline、Wrap、Offstage)
-
Transform(矩阵转换)
作用:做矩形变换-------可以对它的child做平移、旋转、缩放等操作
主要属性表:
属性名 类型 说明 transform Matrix4 一个4*4矩阵。 origin Øffset 旋转点,相对于左上角顶点的偏移。默认的旋转点是左上角的顶点 alignment AlignmentGeometry 对齐方式 trandformHitTests Bool 点击区域是否也会做出相应的改变 例子:
main.dart
import 'package:flutter/material.dart'; import 'package:flutter_app/table.dart'; import 'package:flutter_app/transform.dart'; import 'gridView.dart'; import 'list.dart'; void main(){ runApp( // new MaterialApp( // title: "ListΩView布局示例", // home: new MyApp(), // ) // new MaterialApp( // title: "GridView九宫格示例", // home: new MyAppGrid(), // ) //new MaterialApp( // title: "Table示例", // home: new MyAppTable(), // ) new MaterialApp( title: 'Transform矩阵转换示例', home: new LayoutDemo(), ) ); }
transform.dart
import 'package:flutter/material.dart'; class LayoutDemo extends StatelessWidget{ @override Widget build(BuildContext context) { // TODO: implement build return Scaffold( appBar: AppBar( title: Text('Transform矩阵转换示例'), ), body: new Center( child: Container( color:Colors.grey, child:Transform( // 对齐方式为右上角 alignment: Alignment.topRight, // 用Matrix4.rotationZ(0.3)的方式,旋转一定的角度---绕Z轴旋转 transform: Matrix4.rotationZ(0.3), child: Container( padding: const EdgeInsets.all(8.0), color: const Color(0xFFE8581C), child: const Text('Transform矩阵转换'), ), ) ), ), ); } }
更多关于Matrix4矩形的变换可以参考链接:https://juejin.im/post/6844903709470621710