Flutter基础widgets教程-Column篇
时间:2022-07-26
本文章向大家介绍Flutter基础widgets教程-Column篇,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 Column
Column是在垂直方向上排列子widget的列表。
2 构造函数
Column({
Key key,
MainAxisAlignment mainAxisAlignment,
MainAxisSize mainAxisSize,
CrossAxisAlignment crossAxisAlignment,
TextDirection textDirection,
VerticalDirection verticalDirection,
TextBaseline textBaseline,
List<Widget> children = const <Widget>[],
})
3 常用属性
3.1 crossAxisAlignment:子组件沿着 Cross 轴(在 Column 中是纵轴)如何摆放,其实就是子组件对齐方式
3.1.1 垂直主轴方向(水平方向)左侧对齐
CrossAxisAlignment:CrossAxisAlignment.start,
3.1.2 垂直主轴方向(水平方向)右侧对齐
CrossAxisAlignment:CrossAxisAlignment.end,
3.1.3 垂直主轴方向(水平方向)居中对齐
CrossAxisAlignment: CrossAxisAlignment.center,
3.1.4 垂直主轴方向(水平方向)拉伸子child
CrossAxisAlignment:CrossAxisAlignment.stretch,
3.1.5 这个要和textBaseline一起使用
CrossAxisAlignment:CrossAxisAlignment.baseline,
3.2 mainAxisAlignment:子组件沿着 Main 轴(在 Column 中是横轴)如何摆放,其实就是子组件排列方式
3.2.1 沿着主轴方向(垂直方向)顶部对齐
mainAxisAlignment:MainAxisAlignment.start,
3.2.2 沿着主轴方向(垂直方向)底部对齐
mainAxisAlignment:MainAxisAlignment.end,
3.2.3 沿着主轴方向(垂直方向)居中对齐
mainAxisAlignment:MainAxisAlignment.center,
3.2.4 把剩余空间平分成n份,n是子widget的数量,然后把其中一份空间分成2份,放在第一个child的前面,和最后一个child的后面
mainAxisAlignment:MainAxisAlignment.spaceAround,
3.2.5 沿着主轴方向(垂直方向)平分剩余空间
mainAxisAlignment:MainAxisAlignment.spaceBetween,
3.2.6 把剩余空间平分n+1份,然后平分所有的空间,请注意和spaceAround的区别
mainAxisAlignment:MainAxisAlignment.spaceEvenly,
3.3 mainAxisSize:Main 轴大小
3.3.1 相当于 Android 的 match_parent
mainAxisSize:MainAxisSize.max,
3.3.2 相当于 Android 的 wrap_content
mainAxisSize:MainAxisSize.min,
3.4 textDirection:子组件排列顺序
3.4.1 从左往右开始排列
textDirection: TextDirection.ltr,
3.4.2 从右往左开始排列
textDirection: TextDirection.rtl,
3.5 verticalDirection:确定如何在垂直方向摆放子组件,以及如何解释 start 和 end,指定 height 可以看到效果
3.5.1 Column 从下至上开始摆放子组件,此时我们看到的底部其实是顶部
verticalDirection: VerticalDirection.up,
3.5.2 Column 从上至下开始摆放子组件,此时我们看到的顶部就是顶部
verticalDirection: VerticalDirection.down,
3.6 children column的子widget
children: <Widget>[],
- 通过shell脚本监控oracle session
- sed+awk模拟简单sql查询(26天)
- 海量数据迁移之冲突数据筛查(r2 第1天)
- sqlldr加载性能问题的排查 (r2第2天)
- sqlplus无法启动的问题及解决(3) (25天)
- sqlplus无法启动的问题及解决(2) (25天)
- 10g升级至11g exp的问题解决(23天)
- redo日志文件学习(22天)
- 数据库文件的迁移
- excel文件内容导入数据库的问题及解决(20天)
- 10g,11g数据泵的导入问题及解决(19天)
- ORACLE 11g导入9i dump的问题及解决
- 服务器增加内存后无法重启数据库的问题及解决 (36天)
- 分区表放入keep pool,recycle pool的问题及解析(34天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 又一个布局利器, CSS 伪类 :placeholder-shown
- 聊聊微前端的原理和实践
- javax.el.PropertyNotFoundException: Property 'XXX' not found on type xx.xx.xx.xx(实体类具体路径)
- java基础知识点总结
- Ajax详解(拓展:利用Ajax实现用户名的校验)
- Maven学习笔记
- com.alibaba.dubbo.remoting.TimeoutException: Waiting server-side response timeout 的解决
- 基于VSFTPD技术与KindEditor的简单案例
- Linux下安装JDK1.8、Tomcat、以及MySQL详细介绍(附软件分享)
- Nginx技术(附软件分享)
- (必考)关于JS中this关键字的说法,下面错误的是?
- OA项目总结(附程序源码)
- Redis技术(附软件分享)
- Redis项目案例
- 前端测试题:(解析)关于JS中this关键字的说法,下面错误的是?